What command does the same as find but including null elements?

So this exercise asks you order any vector in a manner such that the minor elements are on the front and the major elements on the back.
Its pseudo code goes like this:
Ordering of a vector (x1, x2, . . . , xn) by selection
for i ranging from 1 to n-1
k ← i
for j ranging from i + 1 to n
if xj < xk
then k ← j
end of cycle in j
t ← xi
xi ← xk
xk ← t
end on cycle in i
Then you are asked to create a code that does the same in Matlab. Here's what i've got for starters:
v = input( 'vector? ' )
for v(1:end)
k = find(v)
My problem is that find ignores the elements that are equal to zero. That would screw up my ordering. So what command does the same as find while taking the zeros into consideration?

2 Comments

what's the input and your desired result?
any vector at all. The desired result is the same vector ordered from minor to major elements.
for example:
vector? v = [1 8 4 3 6 6 2 4]
it would then return
v = [1 2 3 4 4 6 6 8]

Sign in to comment.

 Accepted Answer

v = [1 8 4 3 6 6 2 4];
desired_result=sort(v)
Gives:
desired_result =
1 2 3 4 4 6 6 8

3 Comments

Oh thanks thats great. The problem is that this is specifically made for showing off.
We're supposed to do it the hard way. I'd have to create a code that would manually go through each element, putting the smallest element before the bigger one.
Jesus that is pretty fuckin complex. Thanks though lol. Gonna try and figure it out.

Sign in to comment.

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!