2道外企面试题。

1、统计连续字符串出现最大频次

#!/usr/bin/env python
#-*-coding:utf-8

def maxblock(x):
l = [ i for i in x ] #或者l=list(x)
num=[]
n=1
for i in range(len(l)-1):
if l[i] == l[i+1]:
n+=1
else:
n=1
num.append(n)
print max(num)
maxblock("waerfsddddamssddssssaasda")

2、删除字符串中的连续重复的字符,使其唯一。

def drop(x):
print x
l=list(x) #将str转换成列表
for i in range(len(l)-1):
if l[i] == l[i+1]:
l[i]=""
#首先想到的是del,结果一直报超出index,因为删除元素后列表动态变短了
print "".join(l) #列表转换为str,必须使用join函数。

drop("aaa234dddd555sd")