Đôi khi cần sắp xếp theo nhiều tiêu chí: ví dụ sắp theo department tăng dần, nếu bằng nhau thì theo salary giảm dần.
Cho danh sách bản ghi và danh sách khóa sắp xếp sortKeys — mỗi khóa là object { "field": <tên trường>, "dir": "asc"|"desc" }. Áp dụng lần lượt: khóa đầu ưu tiên cao nhất, khóa sau là tie-breaker. Nếu tất cả khóa đều bằng nhau, giữ thứ tự ban đầu (ổn định).
Sắp theo dept asc rồi salary desc: cùng phòng thì lương cao đứng trước.
Dòng 1: JSON mảng bản ghi.
Dòng 2: JSON mảng sortKeys, mỗi phần tử { "field":..., "dir":... }.
0 ≤ số bản ghi ≤ 1000; 1 ≤ số sortKeys ≤ 5; trường tồn tại; giá trị mỗi trường là số hoặc chuỗi đồng nhất.
In JSON mảng bản ghi đã sắp xếp.
Ví dụ:
Đầu vào:
[{"dept":"B","sal":100},{"dept":"A","sal":50},{"dept":"A","sal":90},{"dept":"B","sal":80}]
[{"field":"dept","dir":"asc"},{"field":"sal","dir":"desc"}]
Đầu ra:
[{"dept":"A","sal":90},{"dept":"A","sal":50},{"dept":"B","sal":100},{"dept":"B","sal":80}]Giải thích:
Đang tải editor...