I agree, permutations() should give the distinguishable permutations; 
allpermutations() should give each and every one.

On Thursday, November 19, 2015 at 4:30:54 PM UTC-5, Stefan Karpinski wrote:
>
> It is the same code. However, I do think that there's a strong case to be 
> made that when the elements of an array are non-unique, you want the 
> distinguishable permutations of it, not all of the permutations.
>
> On Thu, Nov 19, 2015 at 4:16 PM, Ratan Sur <ratan...@gmail.com 
> <javascript:>> wrote:
>
>> I saw a comment in combinatorics.jl that this stuff is being moved over 
>> there so I'll check out if that's the same implementation. I think my use 
>> of the function is more likely what people want when thinking: "oh, I want 
>> all the permutations of this array"
>>
>> On Thursday, November 19, 2015 at 4:12:35 PM UTC-5, Stefan Karpinski 
>> wrote:
>>>
>>> That's definitely more memory efficient, but not much more 
>>> computationally efficient. There's probably a much cleverer way to compute 
>>> the unique permutations of a set of values that contain repetitions. It's 
>>> arguable that this is what permutations ought to do in the first place.
>>>
>>> On Thu, Nov 19, 2015 at 4:06 PM, David P. Sanders <dpsa...@gmail.com> 
>>> wrote:
>>>
>>>>
>>>>
>>>> El jueves, 19 de noviembre de 2015, 14:45:41 (UTC-6), Ratan Sur 
>>>> escribió:
>>>>>
>>>>> I want to get all the unique permutations of an array of a certain 
>>>>> length and this is the only way I currently know how to do it in one 
>>>>> line. 
>>>>> Is there a builtin function for this?
>>>>>
>>>>> julia> unique(collect(permutations([1;0;0;0;1])))
>>>>> 10-element Array{Array{Int64,1},1}:
>>>>>  [1,0,0,0,1]
>>>>>  [1,0,0,1,0]
>>>>>  [1,0,1,0,0]
>>>>>  [1,1,0,0,0]
>>>>>  [0,1,0,0,1]
>>>>>  [0,1,0,1,0]
>>>>>  [0,1,1,0,0]
>>>>>  [0,0,1,0,1]
>>>>>  [0,0,1,1,0]
>>>>>  [0,0,0,1,1]
>>>>>
>>>>>
>>>> It turns out that the following works:
>>>>
>>>> unique(permutations([1, 0, 0, 0, 1]))
>>>>
>>>>  
>>>>
>>>
>>>
>

Reply via email to