SORU
3 EYLÜL 2008, ÇARŞAMBA


Nasıl iki boyutlu bir dizi döndürmek musunuz?

Raymond Chen's post, ilham 4x4 iki boyutlu bir dizi var, 90 derece dönen bir işlev yazmak demek. Raymond sahte kod çözümü bağlantılar, ama bazı gerçek şeyler görmek istiyorum.

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

Olur:

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

Güncelleme: Nick'in cevabı en basit, ama orada daha iyi n^2 yapmak için bir yol var mı? Eğer matris 10000x10000 olsaydı?

CEVAP
29 Aralık 2011, PERŞEMBE


(N^2) zaman ve O(1) algoritması O boşluk( olmadan herhangi bir dalavere yok geçici şeyler! )

90 Döndür:

  1. Devrik
  2. Her satır ters

-90 Döndür:

  1. Devrik
  2. Her sütun ters

180 döndürmek:

Yöntem 1: 90 iki kez Döndür

Yöntem 2Her satır ve her sütun ters ters

-180 döndürmek:

Yöntem 1: -90 iki kez Döndür

Yöntem 2: Her sütun ve her satır ters ters

Yöntem 3Aynı onlar gibi 180 ile kaplanmıştır

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Awesomesauce Network

    Awesomesauce

    4 EKİM 2012
  • SalGames2016

    SalGames2016

    17 Kasım 2012
  • Turkish Airlines

    Turkish Airl

    11 AĞUSTOS 2006