A string parameter and returns new string with all the letters of the alphabet that are not in the argument string. The letters in the returned string should be in alphabetical order. The implementation should uses a histogram from the histogram function
Explanation:
The below code is written in python :
alphabet = "abcdefghijklmnopqrstuvwxyz"
test_dups = ["zzz","dog","bookkeeper","subdermatoglyphic","subdermatoglyphics"]
test_miss = ["zzz","subdermatoglyphic","the quick brown fox jumps over the lazy dog"]
def histogram(s):
d = dict()
for c in s:
if c not in d:
d[c] = 1
else:
d[c] += 1
return d
def has_duplicates(s):
for v in histogram(s).values():
if v > 1:
return True
return False
def test_dups_loop():
for s in test_dups:
print(s + ':', has_duplicates(s))
def missing_letters(s):
r = list('abcdefghijklmnopqrstuvwxyz')
s = s.lower()
for c in s.lower():
if c in r:
r.remove(c) # the first matching instance
return ''.join(r)
def test_miss_loop():
for s in test_miss:
print(s + ':', missing_letters(s))
def main():
test_dups_loop()
test_miss_loop()
if __name__ == '__main__':
main()