什麼是對字母數字字段進行排序的最佳/最快方式?字母數字排序
Q
字母數字排序
1
A
回答
0
你會發現大多數開發庫附帶一個快速排序算法的實現,它通常是最快的排序算法。檢查出Wikipedia link here。
1
你不指定你的目標語言,但不管它是什麼,它應該有可靠的,內置的排序方法,所以使用它們中的一個!對於PHP ...
加載到數組中並進行排序($ array);
php sort ...
$fruits = array("lemon", "orange", "banana", "apple");
sort($fruits);
foreach ($fruits as $key => $val)
{
echo "fruits[" . $key . "] = " . $val . "\n";
}
輸出:
fruits[0] = apple
fruits[1] = banana
fruits[2] = lemon
fruits[3] = orange
1
0
1
的回答你的問題是密切相關的一些細節,你的天堂」提供。 「最佳/最快」的方式取決於字段的長度,你需要排序多少,你有多少可用內存,磁盤和內存的相對速度,字符串內容的細節......,ad nauseam。
Knuth Vol 3有各種各樣的方法的細節。我不記得他是否討論過基底排序,但他可能會這樣做。如果他沒有,你應該查找一些基數排序的參考。它只適用於狹隘的情況,但積極飛向那裏。如果你有一小組短字符串,由於較低的開銷,Bubble Sort在某些體系結構上的性能會好於複雜排序。 C運行時庫包含一個快速排序版本,因爲在某些情況下,它可能是一個非常有效的大型數據集算法。
Net-net,答案是「它要看」。
1
「最好」的方式取決於很多因素:
- 你需要支持比語言更?
- 你需要同時支持多種語言嗎?
- 您是否需要支持當前操作系統或用戶語言以外的語言? (例如,web應用程序)
- 您是否需要支持多種編碼? (unicode,utf-16le/utf-8,ansi代碼頁等)
- 您是否需要支持長時間或高度冗餘的輸入?(預計算或壓縮可能會加快排序操作)
- 您是否需要支持大量輸入,例如:million或billion輸入?
相關問題
- 1. 排序數字串字母
- 2. 排序字母和數字
- 3. 排序字母數字串
- 4. 混合字符串值的字母數字排序:字母數字字母
- 5. 對字母數字數據排序
- 6. PHP排序字母比數
- 7. 按字母排序數組?
- 8. 按字母排序數組?
- 9. 數組排序的字母排序
- 10. Excel VBA排序字母數字宏
- 11. PostgreSQL中的字母數字排序9.4
- 12. SQL Server:用數字排序字母
- 13. 排序的字母數字陣列
- 14. 如何排序字母數字
- 15. 使用LINQ的字母數字排序
- 16. 在Excel中排序字母數字值
- 17. mysql排序字母和數字
- 18. jquery tablesorter - 字母數字排序優先
- 19. LINQ:排序(將字母當作數字)
- 20. 按字母順序排序,然後按字母順序排列
- 21. SQL按字母順序排序的字母數字字段上的字母數字字段
- 22. 排序一個清單:數字升序排列,字母降序
- 23. 按字母順序排序元素,然後按數字排序
- 24. 我按字母順序排序而不是數字排序
- 25. 按字母順序排序
- 26. 排序按字母順序
- 27. 按字母順序排序
- 28. 按字母順序排序
- 29. 按數字排序數組,當數字相同時,按字母排序
- 30. Mysql - priotize按數字排序的字母排序