Dùng sort trên mảng 2 chiều như thế nào?

Chào anh chị. Em thì em biết dùng sort trong mảng một chiều nhưng mảng 2 chiều thì dùng như thế nào ạ? Hay chỉ có cách gán mảng 2 chiều vào mảng 1 chiều r dùng sort rồi gán lại? Em thấy nó hơi lằng nhằng. Em cám ơn ạ

sắp xếp theo quy tắc nào?

vd
9 1 3
5 6 8
7 4 2
sắp xếp thành
1 2 3
4 5 6
7 8 9
? Nếu quy tắc như thế này thì có lẽ copy qua mảng 1 chiều rồi gán lại vào mảng 2 chiều là cách tốt nhất rồi

2 Likes

không có cách nào nhanh hơn hả bạn?

sắp xếp kiểu mà phần tử từ hàng này có thể nhảy sang hàng khác thì chuyển sang mảng 1 chiều là gọn nhất rồi… Cả ma trận ví dụ có n phần tử (n = hàng x cột) thì sắp xếp tốn O(nlogn) phép so sánh M1[i] < M1[j], copy qua mảng 1 chiều rồi copy lại cao lắm chỉ tốn 2n phép so sánh đơn giản I < số hàng, j < số cột nên ko ảnh hưởng gì nhiều tới tốc độ đâu.

2 Likes

hehe. Ths bạn nhiều nhe ^^

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?