考虑一个字符串'1234'
.你需要一个能产生所有旋转的功能:'1234', '3412', '4123', '2341'
.我创建了一个简单的测试套件:
assert rotations('123') == set(['123', '231', '312'])
assert rotations('111') == set(['111'])
assert rotations('197') == set(['197', '971', '719'])
Run Code Online (Sandbox Code Playgroud)
什么是pythonic方式呢?我完成了下面的代码
def rotations(num):
str_num = str(num)
result = set()
for mid in xrange(len(str_num)):
result.add(
str_num[mid:] + str_num[:mid]
)
return result
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
641 次 |
最近记录: |