Help..Write a Matlab function that would arrange a series of numbers without using sort

3 views (last 30 days)
Write a Matlab function that would arrange a series of numbers (i.e. a row vector) in a descending order. As an example, use the vector 2 15 50 3 8 11 5 29
how would i do this without using the sort cmd?
thanks in advance.
  1 Comment
Jan
Jan on 2 May 2013
It is a good and established method for homework questions to show, what you have done so far and explain, which problems occurred. You cannot and should not expect the forum to solve your homework.

Sign in to comment.

Answers (2)

Walter Roberson
Walter Roberson on 2 May 2013
https://en.wikipedia.org/wiki/Sorting_algorithm

Jan
Jan on 2 May 2013
Edited: Jan on 2 May 2013
A bold version - hesitate to submit it except you can explain the "infinite monkey theorem" fluently:
x = [2, 15, 50, 3, 8, 11, 5, 29];
n = length(x);
while ~issorted(x)
x = x(randperm(n));
end
Beside the fact, that this requires a ZillionHz CPU to get finished in a bearable amount of time for larger input, it is short and clear. Unfortunately there is no guarantee, that this algorithm stops, such that it does not satisfy a strict definition of a program. But the question text did not demand a "program", but a "function". If you are able to explain the the difference from the viewpoint of coding theory, I'd accept this as a valid solution.

Categories

Find more on MATLAB in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!