Menu
Coddy logo textTech

Yaygın 2D Dizi Desenleri

Coddy'nin Java Journey'sinin Mantık & Akış bölümünün bir parçası. Ders 8 / 59.

2D dizilerle çalışırken genellikle belirli desenler ortaya çıkar. Bu desenleri tanımak, sorunları daha verimli bir şekilde çözmenize yardımcı olabilir. İşte birkaç yaygın desen:

Köşegen Geçişi

Satır dizininin sütun dizinine eşit olduğu öğelere (matrix[i][i]) erişmek ana köşegeni verir. Yan köşegen için satır ve sütun dizinlerinin toplamı, dizinin boyutundan 1 eksik olan değere eşittir (matrix[i][size - 1 - i]).

Örneğin:

1  2  3
4  5  6
7  8  9

Köşegen (matrix[i][i]) boyunca ilerleyin: 1, 5, 9
Ters köşegen (matrix[i][size - 1 - i]) boyunca ilerleyin: 3, 5, 7

Sınır Geçişi

Kenar elemanlarını dolaşmak için diğer indeks üzerinde yineleme yaparken bir indeksi sabit (0 veya size - 1) tutarsınız.

Üst kenara erişmek için, satır indeksini 0'da sabit tutarak sütunlar üzerinde gezinirsiniz.

Örneğin:

1  2  3  4
5  6  7  8
9 10 11 12

kenar elemanları: 1, 2, 3, 4, 8, 12, 11, 10, 9, 5 (6 ve 7 hariç hepsi)

challenge icon

Görev

Kolay

Girdi olarak kare şeklinde 2B bir tamsayı dizisi (printPatterns) alan ve aşağıdaki desenleri yazdıran matrix adlı bir yöntem oluşturun:

  1. Ana Köşegen: Satır indeksinin sütun indeksine eşit olduğu tüm öğeleri yazdırın.
  2. Karşı Köşegen: Satır ve sütun indekslerinin toplamının matrisin boyutundan 1 eksik olduğu tüm öğeleri yazdırın.
  3. Kenarlar: Matrisin üst, alt, sol ve sağ kenarlarındaki öğeleri yazdırın.

Çıktı şu şekilde görünmelidir:

Main Diagonal: 1 6 11 16 
Anti-Diagonal: 4 7 10 13 
Top Border: 1 2 3 4 
Bottom Border: 13 14 15 16 
Left Border: 1 5 9 13 
Right Border: 4 8 12 16

Kendin dene

// Kodunuzu yalnızca sınıfın içine yazın. main() veya bu sınıfın dışında herhangi bir kod yazmayın.
class PrintPatterns {
    public static void printPatterns(int[][] matrix) {
        // Kodunuzu buraya yazın
    }
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık & Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online Java derleyicisi