Indraja.Punna
BAN USERx = "acacabcatghhellomvnsdb"
y = ["aca","cat","hello","world"]
def find_segment(x, y):
n = len(x)
z = {}
for j in y:
z[j] = 0
for i in xrange(0, n, 1):
count = 0
for k in xrange(0, n, 1):
for j in y:
if x[i:k] == j:
count += 1
if z.get(x[i:k]):
count += 1
z[x[i:k]] = count
return z
print find_segment(x, y)
x = ['tea', 'ate', 'eat', 'apple', 'java', 'vaja', 'cut', 'utc']
def get_anagrams(x):
y = {}
for s in x:
p = ''.join(sorted(s))
if p not in y:
y[p] = s
else:
if y.get(p) not in x:
x.remove(y.get(p))
return x
print get_anagrams(x)
s = "leetcode"
dict = ["leet", "code"]
def segment(s, dict):
n = len(s)
for i in xrange(1, len(s), 1):
if s[0:i] in dict and s[i:n] in dict:
return True
print segment(s, dict)
x = 'Man bites dog'.split(' ')
y = ''
for i in xrange(len(x)-1, -1, -1):
y += x[i] + ' '
print y
def anagram(key_list):
ana_dict = {}
for str in key_list:
key_anagram = ''.join(sorted(str))
if not ana_dict.get(key_anagram):
ana_dict[key_anagram] = str
ana_dict.values()
def generate_substrings(s):
x = [s[i:j+1] for i in xrange(0, len(s), 1) for j in xrange(len(s), 0, -1) if len(s[i:j+1]) > 1]
return list(set(x))
def reverse_str(s):
if s == s[::-1]:
return True
def get_palindrome(s):
sub_list = generate_substrings(s)
rev = [s for s in sub_list if reverse_str(s)]
max_pal = ''
if rev:
max_pal = reduce(lambda x,y:x if(len(x)>len(y)) else y, rev)
return max_pal
if __name__=='__main__':
print get_palindrome('DEFABCBAYT')
def percent_match(an_list, mat_str):
perc = []
leng = 0
for x in an_list:
if x in mat_str:
perc.append(x)
leng += len(x)
percent = (float(leng)/float(len(mat_str)))*100
return percent
- Indraja.Punna June 13, 2016