Menu
CoddyTech

Rotate Image

Sana her satırı bir liste olan n × n boyutunda bir tamsayı ızgarası veriliyor. Izgarayı saat yönünde çeyrek tur döndür ve geri döndür. En üst satır en sağdaki sütun olur, ikinci satır onun solundaki sütun olur ve bu böyle devam eder: (i, j) konumundaki değer (j, n-1-i) konumuna gelir. Izgarayı yerinde değiştirebilirsin; onu geri döndür.

Fonksiyon

rotateImage(matrix: integer-2d-array) → integer-2d-array
matrixinteger-2d-array
kare ızgara, her satır için bir iç liste
Döndürürinteger-2d-array
matris saat yönünde 90 derece döndü

Kısıtlar

  • n == matrix.length == matrix[i].length
  • 1 ≤ n ≤ 70
  • -1000 ≤ matrix[i][j] ≤ 1000

Örnekler

Girdi
matrix = [[3, 7, 1], [9, 5, 2], [4, 8, 6]]
Çıktı
[[4, 9, 3], [8, 5, 7], [6, 2, 1]]
Açıklama
İlk satır olan 3 7 1, yukarıdan aşağıya okunduğunda son sütun olur. Aşağıdan yukarıya okunan ilk sütun olan 3 9 4, ilk satır [4, 9, 3] olur. Ortadaki 5 değeri yerinde kalır.
challenge icon

Ek soru

Bir matrisi 180 derece döndürmek için yerinde hangi iki adım uygulanır ve bunu tek bir takas geçişinde yapabilir misin?

Kodu sıfırla
def rotateImage(matrix):
    # Kodu buraya yazın

Test #1

Test #2

Argüman

matrix = [[3, 7, 1], [9, 5, 2], [4, 8, 6]]

Beklenen Çıktı

[[4, 9, 3], [8, 5, 7], [6, 2, 1]]