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 矩...