【发布时间】:2010-10-03 16:29:12
【问题描述】:
我有一个循环遍历四个(或更少)字符串的脚本。例如:
aaaa
aaab
aaac
aaad
如果能够像这样使用嵌套的 for 循环来实现它:
chars = string.digits + string.uppercase + string.lowercase
for a in chars:
print '%s' % a
for b in chars:
print '%s%s' % (a, b)
for c in chars:
print '%s%s%s' % (a, b, c)
for d in chars:
print '%s%s%s%s' % (a, b, c, d)
这种循环嵌套是一件坏事吗?如果是这样,什么是完成我正在做的事情的更好方法?
【问题讨论】:
-
试着想出一个比蛮力更好的算法。也许是递归或分而治之
-
@Perpetual,在我看来,既然你必须产生所有的可能性,那么它是否是蛮力几乎没有什么区别。当您可以最小化您的需求时,非暴力算法是很好的,但我认为情况并非如此。递归使您的源代码更小,但仅此而已。
标签: python loops for-loop nested-loops