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

  • buttheadgsxr1000

    buttheadgsxr

    24 Ocak 2008
  • merumputdotcom

    merumputdotc

    24 ŞUBAT 2012
  • Triune Films

    Triune Films

    9 ŞUBAT 2006