1樓:匿名使用者
這個建議採用快速排序。快速排序是一種基於分治演算法的排序,網上能搜尋到很多講解,我就不在此贅述了。
另一種方法是採用堆排序。採用堆(heap)這種資料結構來實現排序。
堆是一個完全2叉樹,且滿足所有父節點均小於(或均大於)其子節點。
堆排序的過程就是,將待排序的數建成堆,然後每次彈出堆的頭節點。
具體的實現請看我的空間,當然,僅供參考:
還有一種排序方法是基數排序,我嘗試著實現了一個二進位制形式的。
詳見
當然,這種排序方法只適用於32位整數。
以上三種方法應該均可以完成你所要求的功能。
2樓:
分段排序再組合怎麼樣啊,你這麼大的陣列,實在不好排啊,你試試先讓其中分塊後的每個陣列(x個)有序。然後用x個遊標一個迴圈合併x個陣列
如何將string變為string陣列
1 首先建立一個string型別的數字陣列,如下圖所示。2 然後在這個資料中,使用integer intarray convert.tointarray b 進行轉換,如下圖所示。3 執行程式展示結果,如下圖所示。4 假如型別不是數字,會報錯no converter for type,如下圖所示就完...
如何將陣列賦給順序表,如何將一個陣列賦給一個順序表?
有三種方法 1.system 有個方法 static void arraycopy object src,int srcpos,object dest,int destpos,int length 從指定源陣列中複製一個陣列,複製從指定的位置開始,到目標陣列的指定位置結束。2.一個一個賦值 for ...
在Labview中如何將十進位制陣列轉換為二進位制數迴圈輸出
可以直接發數字的字串,labview裡可以將數字的字串轉化成數字,幾進位制的都可以轉化,然後直接用波形圖顯示出來就可以,很容易的.比如發字元型asc碼的 16 可以用labview的字元型轉成數字16,小數的也有相應的控制元件.有問題再溝通,labview怎麼把一維陣列中所有的二進位制數轉換為一個十...