fixmint
VI

Vì sao 10 đứng trước 2, và sắp xếp tự nhiên sửa lỗi này thế nào

Tác giả: · · cập nhật 8 tháng 11, 2026 · 4 phút đọc

Sắp xếp theo bảng chữ cái thông thường so sánh ký tự đầu tiên của từng mục, rồi đến ký tự thứ hai, và cứ thế tiếp tục. Ký tự đầu của "10" là 1, mà 1 đứng trước 2, nên "10" được xếp trước "2". Thứ tự này đúng với chữ nhưng sai với số. Sắp xếp tự nhiên đọc mỗi chuỗi chữ số như một số nguyên hoàn chỉnh, nên 2 đứng trước 10. Thêm số 0 vào đầu các số, như 02 và 10, sẽ giải quyết cùng vấn đề ngay trong tên mục.

Sắp xếp dòngDanh sách không đúng thứ tựDùng miễn phí

Vì sao máy tính làm như vậy

Sắp xếp thông thường so sánh văn bản từng vị trí một, từ bên trái, dựa trên mã ký tự hoặc thứ tự sắp xếp của ngôn ngữ. Nó dừng lại ở chỗ khác nhau đầu tiên. Cách này phù hợp với chữ: "apple" đứng trước "banana" vì chữ cái đầu đã khác nhau.

Nhưng nó sai với số. Lấy ba tên file: file-2, file-9 và file-10. Ở cặp cuối, việc so sánh đến vị trí thứ 6, nơi hai ký tự là 1 và 9. Số 1 nhỏ hơn nên file-10 đứng trước. Thứ tự thông thường sẽ là file-10, file-2, file-9. Cách sắp xếp này đúng với chữ cái nhưng sai với người đọc số đếm.

Sắp xếp tự nhiên

Sắp xếp tự nhiên, còn gọi là sắp xếp theo số hoặc sắp xếp kiểu người đọc, tách mỗi văn bản thành các chuỗi chữ số và các chuỗi ký tự khác. Các chuỗi chữ số được so sánh theo giá trị, còn phần còn lại so sánh như chữ. Nhờ vậy, 2 đứng trước 10 và file-2 đứng trước file-10. Nhiều trình quản lý file dùng kiểu sắp xếp này làm mặc định, nên thư mục ảnh có số thứ tự thường hiển thị đúng.

Sắp xếp một danh sách trong fixmint

  1. Dán danh sách vào công cụ sắp xếp, mỗi mục một dòng.
  2. Ở mục Thứ tự, chọn Số thay vì A→Z.
A→Z thông thườngSố
item1, item10, item2item1, item2, item10

Thứ tự Số đọc các chữ số như số nguyên hoàn chỉnh. Xóa dòng trùng lặp cũng có thứ tự Số. Công cụ này xóa các dòng lặp trước, rồi mới sắp xếp, nên kết quả không trùng và theo thứ tự số.

Đệm số 0: cách sửa còn lại

Khi tự đặt tên file, hãy để mọi số có cùng độ dài: 01, 02, … đến 10, hoặc 001 đến 100. Khi đó sắp xếp thông thường cho thứ tự đúng ở mọi nơi, kể cả trong các chương trình không có sắp xếp tự nhiên. Đệm số 0 cũng giữ đúng thứ tự khi danh sách được gửi sang máy khác, vì chính tên file mang thứ tự. Cách này hiệu quả vì các số có cùng độ dài làm phép so sánh từng ký tự khớp với thứ tự số. Độ dài phải đủ cho số lớn nhất. Cách dùng ba chữ số chỉ chứa được đến 999, nên file tên 1000 sẽ nằm giữa 100 và 101 và phá vỡ thứ tự. Khi danh sách vượt quá độ dài đã chọn, hãy đệm mọi số theo độ dài rộng hơn.

Hãy áp dụng cho file mới, và đổi tên file cũ hàng loạt bằng cách thêm số 0.

Nơi sắp xếp thông thường hay gây lỗi

Tên có số xuất hiện ở khắp nơi: ảnh xuất ra từ IMG_1 đến IMG_120, các chương đặt tên Chapter 1 đến Chapter 30, danh sách bài hát, số hóa đơn và số phiên bản phần mềm. Sau khi sắp xếp thông thường, bất kỳ danh sách nào trong số này cũng có thể trông sai, vì chữ số đầu tiên quyết định vị trí. Chapter 10 nằm cạnh Chapter 1, còn Chapter 2 lại nằm gần cuối.

Nhãn có cả chữ và số cũng hoạt động tương tự. Part 2a, Part 2b và Part 10 được sắp xếp theo đúng thứ tự đó khi dùng sắp xếp tự nhiên, vì các chữ số được so sánh như số trước, còn chữ cái chỉ phân định thứ tự trong cùng một số. Sắp xếp thông thường thì đặt Part 10 trước Part 2a.

Ngày tháng cần chú ý. Trong sắp xếp tự nhiên, ngày viết kiểu ngày trước như 4/11/2026 và 12/01/2026 được so sánh theo ngày trước, nên 4/11 đứng trước 12/01 dù ngày 12 tháng 1 đến sớm hơn trong năm. Ngày viết năm trước, như 2026-11-04, được sắp xếp đúng như văn bản thông thường, nên hãy dùng định dạng này khi danh sách cần sắp xếp theo ngày.

Kiểm tra kết quả sau khi sắp xếp

Hãy kiểm tra các điểm giới hạn, nơi sắp xếp thông thường hay sai nhất: chỗ chuyển từ 9 sang 10, và từ 99 sang 100. Trong sắp xếp Số, các điểm đó nằm đúng thứ tự. Nếu danh sách trộn số có đệm và số không đệm, hãy kiểm tra những điểm này trước, vì sự lẫn lộn sẽ hiện ra ở đó.

Chọn thứ tự một cách có chủ đích

Dùng A đến Z cho từ, tên và tiêu đề, nơi chữ cái mang ý nghĩa. Dùng Số cho danh sách mà mỗi mục bắt đầu bằng số lượng, trang, chương hoặc phiên bản. Dùng độ dài khi muốn mục ngắn nhất đứng đầu. Xáo trộn dùng để chọn thứ tự ngẫu nhiên, và mỗi lần nhấn sẽ cho kết quả khác. Về quy tắc đằng sau thứ tự bảng chữ cái thông thường, xem cách sắp xếp danh sách theo bảng chữ cái.

Các trường hợp đặc biệt

  • Dòng có cả chữ và số. Sắp xếp tự nhiên so sánh toàn bộ dòng từ bên trái. Với danh sách bắt đầu bằng tên, tên quyết định thứ tự trước, nên "Bob 1" đứng sau "Ada 10" dù 1 nhỏ hơn 10.
  • Độ dài lẫn lộn. Số có đệm và số không đệm trong cùng một danh sách có thể được coi là bằng nhau khi sắp xếp tự nhiên, khi đó thứ tự phụ thuộc vào dữ liệu đầu vào. Hãy chọn một độ dài cho mỗi danh sách.
  • Số thập phân. Sắp xếp tự nhiên đọc 1.9 thành 1 rồi 9, còn 1.10 thành 1 rồi 10, nên 1.9 đứng trước. Cách này phù hợp với số phiên bản, trong đó 1.10 là bản phát hành sau. Với số thập phân như giá tiền, 1.10 nhỏ hơn 1.9, nên thứ tự tự nhiên là sai. Hãy đệm phần thập phân về cùng số chữ số: 1.10 và 1.90.
  • Chữ hoa, chữ thường. Mặc định, công cụ coi Apple và apple là giống nhau, nên chúng được xếp cùng nhau theo thứ tự đã dán. Tùy chọn phân biệt chữ hoa, chữ thường sẽ thay đổi điều này.

Được dịch từ Bản tiếng Anh với sự hỗ trợ của AI.

Bình luận

    Chưa có bình luận nào. Hãy là người đầu tiên.

    Đánh giá của bạn (không bắt buộc)

    Email của bạn không bao giờ được hiển thị hoặc lưu lại.

    Bìa của How to Remain Valuable When Intelligence Becomes CheapHow to Remain Valuable When Intelligence Becomes Cheap

    224 trang về những lợi thế của con người, kinh tế và chiến lược vẫn khan hiếm khi AI có thể làm phần lớn công việc tư duy.

    $3.84Mua trên GumroadBản tiếng Anh