matlab將矩陣按列的逆序排列為什麼是這樣

2021-04-13 01:51:11 字數 3912 閱讀 6899

1樓:匿名使用者

是對的,a(:,n:-1:

1)中第一個:表示的是所有的行,n:-1:

1表示的是從n列取到第一列,按-1的步長。相當於進行的一個for迴圈:for i=n+(-1)*i直到i=1為止

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

2樓:噠噠噠噠你個頭

在來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、持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。

3樓:匿名使用者

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怎麼實現矩陣倒序排列

4樓:匿名使用者

flipud(u)實現矩陣的上下翻轉

fliplr(p)實現矩陣的左右翻轉

5樓:du瓶邪

如下:a =

1 2 3

4 5 6

7 8 9

>> reshape(a,1,9)

ans =

1 4 7 2 5 8 3 6 9

**********************************************

matlab非常重要的一條!

資料儲存訪問「以列」為主!而c語言則以「行」為主!!

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

6樓:匿名使用者

升序排列:

[~,i]=sort(a(:,5));%假如對第5列進行升序排列

內a=a(i,:);%這樣排列就完成容了

降序排列:

[~,i]=sort(-a(:,2));%假如對第2列進行升序排列a=a(i,:);%這樣排列就完成了

希望我的回答能夠幫到你

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

7樓:天天小布丁

你的意思是排序嗎?可以使用sortrows函式:

sortrows(a,k) 將矩陣a按第k列排序,每一行跟著變動

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

8樓:金星緯衣承

升序排列:

[~,i]=sort(a(:,5));%假如對第5列進行升序排列內a=a(i,:);%這樣排列就完成了

降序排列:容

[~,i]=sort(-a(:,2));%假如對第2列進行升序排列a=a(i,:);%這樣排列就完成了

希望我的回答能夠幫到你

請問matlab中怎麼把一維陣列逆序排列,如將a=[1,2,3,4,5],轉成b=[5,4,3,2,1]。有沒有一個現成的函式實現呀

9樓:四舍**入

用:b=fliplr(a);

fliplr左右翻轉矩陣

語法:b=fliplr(a)

將矩陣a的列繞垂直軸進行左右翻轉matabc如果a是一個行向量,fliplr(a)將a中元素的順序進專行翻轉。

如果a是一個列向量,fliplr(a)還等於a。

10樓:凌亂心扉

用:baib=fliplr(a);

fliplr左右翻轉矩陣

語法:du

b=fliplr(a)

將矩陣a的列繞垂

zhi直軸進行dao左右翻轉matabc

如果a是一專個行向量,fliplr(a)將a中元屬素的順序進行翻轉。

如果a是一個列向量,fliplr(a)還等於a。

舉例說明:

例一:如果a是一個行向量

a=[1 3 5 7 9]

fliplr(a)

ans=[9 7 5 3 1]

例二:如果a是一個列向量

a=[135

79]fliplr(a)

ans=[135

79]【功能簡介】實現矩陣左右翻轉。

【語法格式】

b=fliplr(a)

對矩陣a進行左右翻轉。

【例項3.47】對矩陣magic(3)進行左右翻轉。

>> a=magic(3)

a =8     1     6

3     5     7

4     9     2

>> b=fliplr(a)    %左右翻轉b =

6     1     8

7     5     3

2     9     4

【例項分析】左右翻轉的過程中,如果矩陣有奇數列,那麼中間一列是沒有變化的。

11樓:戶衣

matlab中把一維數

bai組逆序排列,可以通du過fliplr函式zhi來進行操作。

daofliplr,是指

專對矩陣屬

操作的函式,可以實現矩陣翻轉。

將一維陣列逆序排列步驟(如a=[1,2,3,4,5]轉成b=[5,4,3,2,1]):

1、雙擊開啟matlab應用程式。

2、在matlab介面中的「命令列視窗」中輸入命令。

3、根據紅色區域位置,在「命令列視窗」輸入「a=[1,2,3,4,5]」。

4、通過函式fliplr求矩陣逆序排列,在「命令列視窗」輸入「b=fliplr(a)」,按下回車鍵。可求得矩陣逆序排列b=[5,4,3,2,1]。

12樓:匿名使用者

fliplr(a);

你可以在matlab中輸入help fliplr具體看一看!

13樓:

沒有bai這種函式吧,自己編一du個函式,加zhi入庫不就可以了這個dao很簡單啊

function (b)=paixu(a);j=1;

n=length(a);

for j=1:n

b(n-j+1)=a(j);

end沒仔細弄你在內改改,應該可以容的

14樓:匿名使用者

b=a(end:-1:1)

15樓:匿名使用者

sort(a,'descend')

電腦鍵盤上英文字母的排列為什麼不按字母的順序排

是按照字母 使用頻率的高低來排序的。可以看看其排序由來的故事 這是所有的電腦鍵盤字母或英文打字機鍵盤字母的排列順序。有心的讀者也許會感到奇怪 為什麼要把26個字母作這種無規則的排列呢?既難記憶又難熟練。據說其原因是這樣的 在19世紀70年代,肖爾斯公司是當時最大的專門生產打字機的廠家。由於當時機械工...

Matlab中的1行0列空矩陣是什麼?為什麼空矩陣會有1行

row,col find r 0 row,col是所有非零元素的橫座標和縱座標 num size row,1 有多少個非零元素for i 1 num r row i col i 1 非零元素置一end 0 n或n 0的矩陣都是空矩陣。所謂的矩陣 乃至多維陣列 其實在記憶體中都是線性儲存的,這也是陣列...

為什麼當矩陣相乘時,只有左邊的列等於右邊的行時才能相乘,不是矩陣的乘法是左邊的行乘後邊的列嗎,所以

對啊,矩陣的乘法是左邊的行乘後邊的列 所以是左邊矩陣每行的數字個數 即列數 等於右邊每列數字個數 即行數 不要想岔了。矩陣左邊只有一列四行,右邊只有一行四列,能算乘法嗎?20 這二者是不能相乘的,一定要注意 矩陣a和矩陣b可以相乘的時候,一定滿足a矩陣的列數與b矩陣的行數相等,如 a 是 m n 矩...