# str_a = "abcdef"# str_a = "abcdeaf"str_a ="abcdeff"dct_a = {}for chr_a in str_a: #O(N)# print(chr_a)if chr_a in dct_a: #xO(1)print(chr_a)breakelse: dct_a[chr_a]=True
f
3. Missing Letter
Parameters:
input: an array of strings of alphabet except 1 letter
output: missing letter
Example:
input: "the quick brown box jumps over a lazy dog"
output: f
3.1 Solution: Python-Code
alphabet ="abcdefghijklmnopqrstuvwxyz"input_arr ="the quick brown box jumps over a lazy dog"input_dct = {}for ltr_s inset(input_arr.replace(" ", "")): input_dct[ltr_s]=Truefor alphabet_ltr in alphabet:# if not input_dct.get(alphabet_ltr): if alphabet_ltr notin input_dct:print(alphabet_ltr)break
f
4. First Non-Duplicated
Parameters:
input: an array of strings
output: first non-duplicated character in string
Example:
input: "minimum"
output: n
4.1 Solution: Psuedo-Code
A. Create letter counter dict: \(O(N)\)
for each letter of input_str, add create key and (add) value by 1
B. Find first letter with only one occurence: \(O(N)\)
for each letter of input_str, find key with value: 1
Time-complexity:
\(O(N+N)=O(2N)=O(N)\)
input_str ="minimum"ltr_dict = {}for ltr in input_str: # 4.1.A ltr_dict[ltr] = ltr_dict.get(ltr,0)+1ctr=0print(f"Input-string: '{input_str}'")print(f"Letter-counter dictionary: {ltr_dict}")for ltr in input_str: # 4.1.Bif ltr_dict[ltr]==1: ctr+=1print(f"{ctr}: Non-duplicate: '{ltr}' in {input_str}")