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

  • Dive In

    Dive In

    17 Temmuz 2013
  • MobileTechReview

    MobileTechRe

    6 HAZİRAN 2008
  • VJ VIMANA

    VJ VIMANA

    3 Mayıs 2007