SORU
26 NİSAN 2010, PAZARTESİ


Bir liste, tüm olası permütasyon oluşturmak için algoritma?

N eleman listesi, n var biliyorum var! olası yolları bu öğeleri sipariş etmek. Bu liste, tüm olası sıralama oluşturmak için bir algoritma nedir? Örneğin, liste [a, b, c]. Algoritma döndürecektir [[a, b, c], [a, c, b], [b, a, c], [b, c, a], [c, a, b], [c, b, a]].

Burada okuyorum http://en.wikipedia.org/wiki/Permutation#Algorithms_to_generate_permutations

Ama Wikipedia asla açıklanması iyi oldu. Bunu pek anlamıyorum.

CEVAP
26 NİSAN 2010, PAZARTESİ


Temel olarak, soldan sağa her bir unsur için kalan tüm öğeleri permütasyon oluşturmak. Bu noktada sadece olası bir düzen var Son elemanı elde edene kadar bu yinelemeli olarak (ya da eğer acı seviyorsanız yinelenen) yapabilirsiniz.

Yani, bir liste verilmiş: [1,2,3,4]

Sadece 1, 2, 3 ve 4 ile başlayan tüm permütasyon ile başlayan tüm permütasyon oluşturmak.

Bu etkili üç öğe listesi için dört unsurun bir listesi permütasyon bulma soruna azaltır. Sen ve 1 element 2'nin devam sonra, hepsi var.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ADDVOiCE

    ADDVOiCE

    28 Mayıs 2009
  • happyjpy

    happyjpy

    22 AĞUSTOS 2009
  • TomKNJ

    TomKNJ

    26 ŞUBAT 2007