I need help arranging a vector using recursion please.
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Kevin Smith
am 5 Nov. 2017
Kommentiert: Walter Roberson
am 22 Sep. 2020
I am working on a function called vecSort that is supposed to arrange a vector from the smallest element to the largest using recursion. I cannot use the 'sort' function or any function similar to it. I have to use the min and/or max functions. This is what I have so far:
function vectorSort(vec)
L=length(vec);
if L<1
vec=[];
elseif L==1
vec=vec;
else i>1;
I have set the terminating condition but I cannot figure out how to get function to call on itself to arrange the vector from the minimum element to the largest element.
3 Kommentare
Walter Roberson
am 5 Nov. 2017
You cannot sort recursively in any useful way unless you also have a phase for combining already-sorted regions.
Akzeptierte Antwort
Walter Roberson
am 6 Nov. 2017
Since you do not have a re-combination phase, your "recursive" function will have to be written from a theoretical point of view, just to prove that it can be done, instead of from a practical point of view. You will need to change your strategy into something closer to a bubble sort, and see https://www.mathworks.com/matlabcentral/answers/361333-help-i-need-to-convert-numbers-into-english-words-using-recursion#answer_285821 on how to transform the "for" loops into recursion.
I would never write a recursive sort this way, and I would never recommend teaching about recursion in this way.
If you had a phase designed to merge the results of two vectors that were already sorted then then that can be done usefully and effectively with recursion. But as you appear to be insisting that you do not have such a phase, you will have to use the ugly theoretical transform between for and recursion, just to satisfy your assignment of having used recursion.
5 Kommentare
Walter Roberson
am 22 Sep. 2020
Well, it would fail on NaN. Do you have NaN in your vector, Neha Prajapati ? If so then where do you want them to be sorted relative to the numbers?
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Shifting and Sorting Matrices finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!