SORU
2 AĞUSTOS 2008, CUMARTESİ


Bir dize tüm olası permütasyon listesi oluşturmak

Nasıl uzunluğu x ve y karakterleri arasındaki bir dize tüm olası permütasyon listesi oluşturma hakkında, karakter değişken bir listesini içeren giderdim.

Herhangi bir dili çalışmak istiyorsunuz, ama taşınabilir olmalı.

CEVAP
2 AĞUSTOS 2008, CUMARTESİ


Bunu yapmak için çeşitli yollar vardır. Yaygın yöntem, özyineleme, memoization, ya da dinamik programlama kullanın. Temel fikir üretmek bir liste tüm dizelerin uzunluğu 1, sonra her yineleme için tüm dizeleri üretilen son yineleme, add dize birleştirilmiş her karakter dizesi ayrı ayrı. (kodda değişken dizin altında geçen ve sonraki yineleme) başlangıcı izler

Bazı sözde kod:

list = originalString.split('')
index = (0,0)
list = [""]
for iteration n in 1 to y:
  index = (index[1], len(list))
  for string s in list.subset(index[0] to end):
    for character c in originalString:
      list.add(s   c)

listede x uzunluğu, ilk (x-1) olacak * len () originalString girdileri daha az tüm dizeleri kaldırmak gerekir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MrRandomSong

    MrRandomSong

    29 Kasım 2009
  • undrmyumbrellaa

    undrmyumbrel

    25 Temmuz 2012
  • JeezyVEVO

    JeezyVEVO

    12 Mayıs 2009