Re: [討論] 怎樣把矩陣內的值之大小順序全部倒轉

看板MATLAB作者 (~火火狗)時間12年前 (2013/10/14 21:58), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《zenki0127 (六瓢)》之銘言: : 例如 : A=[1 6 8 7 4] : 如何將它變成 : B=[8 6 1 4 7] : 也就是最大那個的值變成最小的那個 : 第二大的值變成第二小的那一個....依此類推 來騙點P幣吧。 用到函數 % ismember 兩者矩陣 比對用 %[ba,bb] = ismember(A,B) 在A矩陣元素,尋找等於B矩陣元素 % ba 矩陣大小 會等於B矩陣大小 % bb 矩陣大小 會等於B矩陣大小 % sort 將一個數字矩陣,由小到大 或由大到小排列 % [ab,ac] =sort(aa); 預設為由小到大 % ab 為由小到大結果 % ac 對應原本aa的index , aa(ac) 會排列結果等於 ab % 以下為範例 aa =[1,3,5,7,9,4]; [ab,ac] =sort(aa); [ba,bb] =ismember(aa,ab); cc =ab(end:-1:1); dd =cc(bb); 打到一半文章斷線... ~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.154.107

10/14 22:23, , 1F
感謝您的解答!!
10/14 22:23, 1F

10/15 08:20, , 2F
[q,w]=sort(A); [q1,w1]=sort(A,'descend'); B(w)=q1;
10/15 08:20, 2F
※ 編輯: s123123sam 來自: 219.87.154.107 (10/15 22:24)
文章代碼(AID): #1IM_YBFW (MATLAB)
文章代碼(AID): #1IM_YBFW (MATLAB)