自然定序
外觀
在計算機科學中,自然定序(或自然序、自然排序,英文:Natural sort order)是一種字符串排序方式,其在字母定序的基礎上,將字符串中的多個數字字符視為整體,並按數值方式進行排序。對人類而言,自然定序的處理結果看上去會比純字母序更加直觀。[1]
示例
[編輯]下方示範對 z11
、z2
這兩個字符串作升序排序。按字母定序規則排序,因第一個字符串中的 1
在字符順序上排在 2
之前,因此得到的結果是 z11
排在 z2
之前;而在自然定序中,由於兩個字符串中的 11
和 2
都被視為數值,且在數值上 2 排在 11 之前,因此得到的結果是 z2
排在 z11
之前。
字母定序:
z11
z2
自然定序:
z2
z11
實際應用
[編輯]許多編程語言都提供了按自然定序排序的功能,例如 PHP 的 natsort
[2]、MATLAB 的 natsort
[3] 等。
自然定序也被許多操作系統用於在文件管理中按文件名排序的場景中。[4]
參考資料
[編輯]- ^ Sorting for Humans : Natural Sort Order. Coding Horror. 2007-12-12 [2023-02-26]. (原始內容存檔於2023-08-29).
- ^ PHP: natsort - Manual. www.php.net. [2023-02-26]. (原始內容存檔於2023-09-23).
- ^ Customizable Natural-Order Sort. www.mathworks.com. [2023-02-26]. (原始內容存檔於2023-06-28) (英語).
- ^ admin. Natural Sort. Aavtech. 2018-08-14 [2023-02-26]. (原始內容存檔於2023-02-26) (美國英語).