python 连续比较_python面试题--连续出现最大次数

确实有段时间没怎么写python,手写还不上机是真的难受。

而且break 跳出循环最内一层的事情都要想一下才能写得出来。

题目如下:

寻找一个字符串最大连续出现次数,并放入字典中,

s="aaccccababbbb"{'a': 2, 'b': 4, 'c': 4}

代码如下

s="aaccccvbbbbbbbbbdddddddddeeedeeeeettt"dict1={}

ls=[i for i ins]for i inset(ls):

dict1[i]=1

print(dict1)for i inrange(len(ls)):

count=1

for j in range(i+1,len(ls)):if ls[i]==ls[j]:

count+= 1

if dict1.get(ls[i]) <=count:

dict1[ls[i]]=countelse:pass

else:break

print(dict1)#

#{'c': 5, 'e': 6, 'v': 2, 'b': 10, 'd': 10, 'a': 3, 't': 4}#{'c': 5, 'b': 10, 't': 4, 'a': 3, 'd': 10, 'v': 2, 'e': 6}

1353331-20191015221539778-1102316953.png

1353331-20191015223957810-1011102244.png

join 打错哦了

str=>list,set 可以直接list() set()方法转换

ls="aaccccvbbbbbbbbbdddddddddeeedeeeeettt"dict1={}for i inset(ls):

dict1[i]=1

print(dict1)for i inrange(len(ls)):

count= 1

for j in range(i+1,len(ls)):if ls[i] ==ls[j]:

count+= 1

if dict1.get(ls[i]) <=count:

dict1[ls[i]]=countelse:break

print(dict1)

1353331-20191015224223554-1379068855.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值