matlab矩陣排序後如何顯示排序後的元素在原矩陣中的位置

2021-03-26 07:04:02 字數 2325 閱讀 5714

1樓:匿名使用者

x=[45 65 23 12 78];[a,b]=sort(x);

sort是從小到大排列,a是排序後結果,b是a結果中各元素的原始位置。

2樓:書宬

a=[12 43 4 65 2 1];

[c d]=sort(a)

matlab 利用sort排序後,如何取得排序後每個元素在原來矩陣中的行下標和列下標?

3樓:我行我素

你用的語bai

法句式是對的,du但b不是行列下標zhi,而是線性下標,可進行轉dao換,如:

[a,b]=sort(pv3(:),'descend');

[r,c]=ind2sub(size(pv3),b);

r,c就是a中元素在排回序前的行列答下標。

matlab利用sort排序如何取得排序後每個元素在原來矩陣中的行下標和列下標?

4樓:我行我素

你用的抄語法句式是對的,但b不是行列下標,bai而是線性下標,可du進行轉換,zhi如:

[a,b]=sort(pv3(:),'descend');

[r,c]=ind2sub(size(pv3),b);

r,c就是a中元素在排

dao序前的行列下標。

怎樣返回原來矩陣中的元素在排序之後矩陣中的位置

5樓:小樂笑了

需要之前的位置,那就需要先做個拷貝,然後將新矩陣中的元素,對原矩陣進行查詢,即可

matlab利用sort排序後,如何取得排序後每個元素在原來矩陣中的行下標和列下標?

在matlab中,將矩陣a升序排列後,如何讓和a等size的b中的元素位置跟著a調整?

matlab 中,怎麼讓一個矩陣按某一列排列,並且行也跟著變動?

6樓:噠噠噠噠你個頭

在來matlab中讓矩陣按某一列排列,源

需要用到bai

排序演算法對某一du列資料排序,然後在排序算zhi法的if判斷句中,dao依次交換矩陣兩行內容。

以題目中矩陣為例,可以利用冒泡法對第三列資料排序,實現程式如下:

a=[5 7 8;4 6 1;8 0 7];

n=length(a);b=;

for i=1:n-1

for j=1:n-i

if(a(j,3)>a(j+1,3))

b=a(j,:);a(j,:)=a(j+1,:);a(j+1,:)=b;

endend

enddisp(a)

通過程式即可實現將程式按第三列排列。

擴充套件資料氣泡排序演算法原理:

1、比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。

2、對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。

3、針對所有的元素重複以上的步驟,除了最後一個。

4、持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。

7樓:匿名使用者

a=[5 7 8

4 6 1

8 0 7]

a =5 7 8

4 6 1

8 0 7

>> sortrows(a,3)

ans =

4 6 1

8 0 7

5 7 8

matlab 矩陣排序後如何顯示排序後的元素在原矩陣中的位置

8樓:書宬

a=[12 43 4 65 2 1];

[c d]=sort(a)

matlab中要把矩陣中的元素降序排列怎麼辦?

9樓:匿名使用者

sort(a)若a是向量,

預設都是對a進行升序排列。

sort(a)是預設的升序,而sort(a,'descend')是降序排序。

sort(a)若a是矩陣,預設對a的各列進行升序排列sort(a,dim)其中dim=1時等效sort(a),dim=2時表示對a中的各行元素升序排列

10樓:匿名使用者

升序排列,sort(a,'ascend')

降序排列sort(a,'descend')

matlab中矩陣畫圖如何程式設計

假設待分析bai在精細紋理影象 du的一部分是一個 zhim n的矩形視窗。dao 某一灰度級結構的出版現情況可以權由相對的頻率的矩陣來描述,他描繪了具有灰度級a,b的兩個畫素,在方向 上間隔距離為d,以多大的頻率出現在視窗中。共生矩陣求取方法 主要有如下六種 1.能量,或角度二階矩 影象均勻性的測...

MATLAB中如何直接輸入矩陣,怎麼在matlab中輸入變數的矩陣

1.試分別生成 5 階的單位陣 8 階均勻分佈的隨機矩陣及其下三角矩陣 a eye 5 b rand 8 c tril b 2.生產列向量 x 1,3,5,7,9,29 x 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 方法1 y 1 2 29 方法2 z lins...

如何實現matlab將矩陣中前幾列置為

a 1 3 0 前3列置0 矩陣名字為a a 1 j 0 這樣就能把前j列置為零 1 思路 使用布林陣列引用矩陣中所有大於某值的元素,然後將其賦值為0。2 a a 10 0 將矩陣a中大於10的元素設定為0。3 示例 size a m,n 第一列設為0 a 1 0 matlab如何使矩陣中大於某值的...