Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016

how can I create a vector with unknown length?

Asked by sapir on 9 May 2013

I need to create a user defined function that recieves a vector x of any length and than sorts the vector from the largest to the smallest into a new vector y. I'm not allowed to use the function sort. I have no idea how to begin! please help me!! thank u!!!

0 Comments

sapir

Products

No products are associated with this question.

3 Answers

Answer by Roger Stafford on 9 May 2013

This article should be of help to you.

 https://en.wikipedia.org/wiki/Sorting_algorithm

I tend to prefer the merge sort algorithm.

0 Comments

Roger Stafford
Answer by John Doe on 9 May 2013
Edited by John Doe on 9 May 2013

The most intuitive (and simple to implement) is probably bubble sort:

https://en.wikipedia.org/wiki/Bubble_sort

Since this is an assignment, I'll leave some of it open, so fill in the blanks =)

n=length(A);
for j=1:1:n-1
    % comparing each number with the next and swapping
    for i=1:1:n-1
       if ...
      % In here you should check if A(i) > A(i+1)
      % If so, switch places. You need a temporary
      % variable, in order to not overwrite something.
       end
    end
end

Good luck =)

0 Comments

John Doe
Answer by Sean de Wolski on 9 May 2013
xsorted = sortrows(x(:),-1)

0 Comments

Sean de Wolski

Contact us