二維數(shù)組從小到大排序 matlab怎么對(duì)一個(gè)二維數(shù)組的第一行按數(shù)值大小排序,我希望第二行的各元素也跟著排序?
matlab怎么對(duì)一個(gè)二維數(shù)組的第一行按數(shù)值大小排序,我希望第二行的各元素也跟著排序?A=cell(1,40)for I=1:40 A{I}=zeros(400,10)A{I}(I,:)=1 end
matlab怎么對(duì)一個(gè)二維數(shù)組的第一行按數(shù)值大小排序,我希望第二行的各元素也跟著排序?
A=cell(1,40)for I=1:40 A{I}=zeros(400,10)A{I}(I,:)=1 end B=cell 2mat(A)B是您想要的矩陣。順便說(shuō)一下,您想要的表單只在第一行到第40行,第41行到第400行是一個(gè)360行*400列的零矩陣。
C語(yǔ)言,如何對(duì)二維數(shù)組進(jìn)行按列排序?
在C語(yǔ)言中,二維數(shù)組是按行存儲(chǔ)的,這對(duì)于每行的排序非常方便??梢詫⒚恳恍凶鳛橐痪S數(shù)組,并使用排序函數(shù)直接排序。
但是,對(duì)每列進(jìn)行排序不能直接視為一維數(shù)組。但是,第j列a[0。。。M-1][J]仍然可以作為一維數(shù)組進(jìn)行邏輯排序。下面是氣泡排序的示例。
按列對(duì)二維數(shù)組排序后,進(jìn)一步說(shuō)明如何調(diào)用快速排序函數(shù)按行排序。
程序源代碼:。
C語(yǔ)言怎樣對(duì)二維數(shù)組中每個(gè)元素進(jìn)行選擇排序?
參考代碼:#include<stdio。H>
#包括“標(biāo)準(zhǔn)庫(kù)”。H “
#包含”時(shí)間。H“
int main(int argc,char*argv[]{
int a[5][8],I,J,K,t,*P
printf(”排序前:n“)
srand((unsigned)time(null))
for(I=0I<5i){//賦值給2D數(shù)組
for(J=0j<8printf(”=“,a[I][J]=Rand() 0))
printf(”n“)}]printf(”排序后: “)
P=(int*)a//簡(jiǎn)化為一維,因此排序很簡(jiǎn)單
for(t=I=0I<40i){//按選擇排序
for(k=I,j=k 1J<40j)
if(P[k]>P[j])
k=j
if(k!=I)
J=P[k],P[k]=P[I],P[I]=J
打印f(T%8?“=”:“=n”,P[i
]}]返回0
}