30/09/2018, 23:45
In ma trận mxn thành hình xoắn ốc
Đây là bài tập khá cơ bản, nhưng không ngờ lại có trên Leetcode, thôi thì sẵn giải luôn cho vui nhé mọi người
Cho vào cái ma trận thế này
[
[ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ]
]
In ra thế này
[1,2,3,6,9,8,7,4,5]
Spiral Matrix - LeetCode
Can you solve this problem?
Bài liên quan
Để em thử sức với JS
giải thích:
Tới đây là đi được vòng ngoài của ma trận, đệ quy tiếp tục với ma trận (m-1)x(n-1)
Bonus cái jsfiddle để chạy code nếu lười (hoặc là mở console panel của trình duyệt ra)
https://jsfiddle.net/uun5qvwk/
Giải thích vài hàm xử lí mảng của JS nếu bạn không quen:
Mình dùng 4 cạnh của hình vuông(HCN) để giới hạn mảng, sau mỗi vòng lặp thì bán kính HV(HCN) thu nhỏ lại 1 đ.vị, cứ thế in mãi đến khi đủ số lượng phần tử của mảng thì dừng.
Code này áp dụng cho cả ma trận m x n bình thường chứ ko nhất thiết phải ma trận vuông, code C++:
Chạy thử:
Code của em
Ý tưởng
Đây hình như là bài con của bài này đúng không anh @ltd ?