Cho mảng 2 chiều info (mỗi hàng là một vận động viên với các thuộc tính: Rank, age, height) và chỉ số cột k. Sắp xếp các hàng theo giá trị ở cột k tăng dần.
Ví dụ: k = 1 (cột age) sẽ sắp xếp theo tuổi.
Cách làm
Sử dụng phương thức list.sort(key=...) với hàm lambda lấy phần tử thứ k của mỗi hàng.
Ví dụ mã nguồn
def solve(info, k):
info.sort(key=lambda x: x[k])
return info
info = [[1, 25, 190], [2, 35, 180], [3, 33, 185], [4, 26, 175], [5, 35, 180]]
k = 1
print(solve(info, k))
# [[1, 25, 190], [4, 26, 175], [3, 33, 185], [2, 35, 180], [5, 35, 180]]
Đầu vào / Đầu ra
Input: [[1, 25, 190],[2, 35, 180],[3, 33, 185],[4, 26, 175],[5, 35, 180]], 1
Output: [[1, 25, 190], [4, 26, 175], [3, 33, 185], [2, 35, 180], [5, 35, 180]]