permutation without replacement matrix

I would like to find out the number of possibilities when drawing k balls from an urn with n balls: k=6; n=12
This is of the type variations (In compliance with the order) and without repetitions (replacement)
Therefore I need a matrix of the size=[665280*12] and it looks like this
[0 0 0 0 0 0 1 2 3 4 5 6]
The rows will always have 6 zeros in any order and the remaining will be filled by the numbers 1 to 6. The total possibilities are obtained by n!/(n-k)!
Please help me to get this matrix
Best Regards Manoj

3 Comments

What have you tried so far?
Well I tried using the perms functions and even nchoosek , but nothing seems to work. I am not sure how to approach the problem
if true
% code
end
a = [0 0 0 0 0 1 2 3 4 5 ];
c =combinator((length(a)),10,'p'); % Take 10 at a time.
d = unique(a(c),'rows');
This is where I have arrived at. I found this combinator function that I could use. The problem is it gives me the variable d which is required by me. It is right for 10 values, but I want for 12 values and currently it says out of memory. Anyway to get the solution from here ?

Sign in to comment.

 Accepted Answer

% a smaller example
k = 2 ;
n = 4 ;
v = perms(1:k) % all permutations of values 1:k
v = [zeros(size(v,1),1) v] % add a row of zeros
p = permpos(1:k, n) % my function!
% create permutations
c = arrayfun(@(x) reshape(v(x,p+1),size(p)),1:size(v,1),'un',0)
c = vertcat(c{:})
c = sortrows(c) % cleaner output
My function PERMPOS can be downloaded here:

5 Comments

This is exactly what I was looking for , it is working for the huge matrix I wanted as well. Thank you so much Jos, really appreciate it :)
Thank you so much José-Luis as well, helped me to understand the problem much better
You're welcome. So which answer did you accept?
Manoj
Manoj on 26 Jun 2014
Edited: Manoj on 26 Jun 2014
I am going to use your answer since it is exactly what I wanted , but I had already accepted José-Luis's answer so I am not sure how to accept your answer now. That is why I gave you 1 vote :) I am not sure how to change this
José-Luis
José-Luis on 26 Jun 2014
Edited: José-Luis on 26 Jun 2014
I am going to delete my answer so you can accept Jos'. Don't know if it it will work since I have never done that.

Sign in to comment.

More Answers (1)

how to turn matrix without usin' the apostrophe, rot90, flipud, fliplr

Categories

Asked:

on 23 Jun 2014

Commented:

on 26 Nov 2019

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!