generate De Bruijn sequence memory and string vs lists
Vincent Davis
vincent at vincentdavis.net
Thu Jan 23 14:50:17 EST 2014
On Thu, Jan 23, 2014 at 12:02 PM, Peter Otten <__peter__ at web.de> wrote:
>
> I just noted that the first Python loop can be eliminated:
>
> def debruijn(k, n):
> a = k * n * bytearray([0])
> sequence = bytearray()
> extend = sequence.extend # factor out method lookup
> def db(t, p):
> if t > n:
> if n % p == 0:
> extend(a[1: p+1])
> else:
> a[t] = a[t - p]
> db(t + 1, p)
> for j in xrange(a[t - p] + 1, k):
> a[t] = j
> db(t + 1, t)
> db(1, 1)
> return sequence.translate(_mapping)
I am not really sure what _mapping should be. The code above does not run
because
NameError: global name '_mapping' is not defined
I tried to get the bytearray
sequence to convert to ascii but don't know how to.
Vincent Davis
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20140123/4c613100/attachment.html>
More information about the Python-list
mailing list