您的位置:首页 > 编程语言 > Python开发

每日一练(python版本)

2011-03-16 06:33 267 查看
编码完成下面的处理函数。函数将字符串中的字符
'*'移到串的前部分,前面的非
'*'字符后移,但不能改变非
'*'字符的先后顺序,函数返回串中字符
'*'的数量。如原始串为:
ab**cd**e*12,处理后为
*****abcde12,函数并返回值为
5。(要求使用尽量少的时间和辅助空间)

import sys

s = '****ab******c**def*g***h'

l = []

for j in s:

l.append(j)

count = 0

if len(l) == 1:

print l

sys.exit(0)

if l[0] == '*':

count += 1

for i in range(1, len(l)):

if '*' != l[i-1] and l[i] == '*':

for j in range(i-count):

l[i-j] = l[i-j-1]

l[count] = '*'

count +=1

print l
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: