Is there a command ( like "sort" for example ) arranges vector elements ascending ,max, descending (humped shap)?

Is there a command ( like "sort" for example ) arranges vector elements ascending ,max, descending (humped shap)?

댓글 수: 6

Why does sort not work for you? Are you looking for something more like rowsort?
'ascending, max, descending' is not uniquely defined for a vector of values. Can you give an example of what kind of logic you expect such a function to use?
for example
a = [2 5 4 1 3]
I want to arrange it like
a = [1 3 5 4 2]
Adam
Adam 2019년 10월 28일
편집: Adam 2019년 10월 28일
based on what logic though? If I had to guess I'd say you want values sorted alternating at the start and end, with the max in the middle (assuming an odd number of elements).
yes, kind of.
but as index increase the value increases too, till maximum ,then the opposit as index increases value decreases. " hump shaped arrangement"
How do you differentiate between [24531] and [13542]?

댓글을 달려면 로그인하십시오.

 채택된 답변

>> V = randi(99,1,23)
V =
93 68 76 74 39 65 17 70 4 28 5 10 82 69 32 95 4 44 38 76 79 19 49
>> Y = sort(V);
>> Z = [Y(1:2:end),fliplr(Y(2:2:end))]
Z =
4 5 17 28 38 44 65 69 74 76 82 95 93 79 76 70 68 49 39 32 19 10 4

추가 답변 (1개)

Yes. Use sort.
e.g.
a = [1,3,2,4];
b = sort(a,'ascend');% b = [1,2,3,4]
c = sort(a,'descend');% c = [4,3,2,1]

카테고리

도움말 센터File Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

제품

태그

질문:

2019년 10월 28일

댓글:

2019년 10월 28일

Community Treasure Hunt

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

Start Hunting!

Translated by