python編程 C語言,如何對二維數(shù)組進(jìn)行按列排序?
C語言,如何對二維數(shù)組進(jìn)行按列排序?在C語言中,二維數(shù)組是按行存儲的,每行排序都很方便。每一行可以看作一個一維數(shù)組,排序函數(shù)可以用來直接排序。但是,對每列進(jìn)行排序不能直接視為一維數(shù)組。但是,第j列a[
C語言,如何對二維數(shù)組進(jìn)行按列排序?
在C語言中,二維數(shù)組是按行存儲的,每行排序都很方便。每一行可以看作一個一維數(shù)組,排序函數(shù)可以用來直接排序。
但是,對每列進(jìn)行排序不能直接視為一維數(shù)組。但是,第j列a[0。。。M-1][J]仍然可以作為一維數(shù)組進(jìn)行邏輯排序。下面是氣泡排序的示例。
按列對二維數(shù)組排序后,進(jìn)一步說明如何調(diào)用快速排序函數(shù)按行排序。
程序源代碼:。
python中有沒有直接對多維數(shù)組排序的方法?
您可以使用numpy的lexport直接將numpy作為npdata導(dǎo)入=np.數(shù)組([[1,2,3,4,5],[1,2,3,6,7],[2,3,4,5,7],[3,4,5,6,7],[4,5,6,7,8
)idex=名詞短語([-1*data[:,2],data[:,1],data[:,0
,先按升序排列第一列,再按第二列按升序排列,然后按降序排列第三列|Data=Data[idex,:
~]/*PHP中的快速排序,并反轉(zhuǎn)輸出*/函數(shù)快速排序($array){if(!Isset($array[1])return$array$mid=$array[0]//獲取關(guān)鍵字進(jìn)行分段,一般第一個元素是$leftarray=array()$rightarray=array()$foreach($array as$V){if($V>$mid)$rightarray][=$V//如果($V),則將大于$mid的數(shù)字放入數(shù)組中