 mxn elemanlı bir matris verildiğinde (m satır, n sütun), matrisin tüm elemanlarını spiral sırayla döndürür. Örneğin, giriş matrisi: [[1, 2, 3], [4, 5, 6], [7, 8, 9]] ise çıkış şöyle olmalıdır: [1, 2, 3, 6, 9, 8, 7, 4, 5].
Bu sorunu çözmek için, matrisi yinelemeli olarak sarmal bir düzende hareket ettirebilirsiniz. Buna yaklaşmanın bir yolu, matrisin dört sınırını takip etmek ve her yinelemede içe doğru hareket etmektir. İşte bir Python uygulaması: ``` def spiralOrder(matrix): if not matrix: return [] m, n = len(matrix), len(matrix[0]) top, left, bottom, right = 0, 0, m -1, n-1 output = [] while üst <= alt ve sol <= sağ: # aralıkta(sol, sağ+1): output.append(matrix[top][j]) üstte j için üst satırı çaprazla += 1 # Aralıkta i için sağ sütunu hareket ettirin(üst, alt+1): output.append(matrix[i][sağ]) sağ -= 1 # Alt satırı hareket ettirin üst <= alt: aralıktaki j için( right, left-1, -1): output.append(matrix[bottom][j]) bottom -= 1 # Sol sütunu çaprazla <= sağ: i için aralıkta(alt, üst-1, -1) : output.append(matrix[i][left]) left += 1 dönüş çıkışı ``` Örnek girdiniz için, `spiralOrder([[1, 2, 3], [4, 5, 6] çıktısı, [7, 8, 9]])`, "[1, 2, 3, 6, 9, 8, 7, 4, 5]" olur.