Q1
unknown
python
20 days ago
1.1 kB
3
Indexable
n = int(input())
arr = []
for i in range(n):
arr.append(int(input()))
print(arr)
q = int(input())
def brute_force(arr,q):
for i in range(q):
query = int(input())
count = 0
for j in range(len(arr)):
if arr[j] == query:
count = count + 1
print(count)
##optimisation 1 using the hash arrays
def optimisations_1(arr,q):
n = len(arr)
hash_arr = [0]*51
for i in range(len(arr)):
hash_arr[arr[i]] = hash_arr[arr[i]] + 1
for i in range(q):
query = int(input())
print(hash_arr[query])
##optimisation 3 using the hashmap data structures
from collections import defaultdict
def optimisation_2(arr,q):
mp =defaultdict(int)
for i in range(len(arr)):
mp[arr[i]] += 1
for i in range(q):
query = int(input())
print(mp[query])
print(optimisation_2(arr,q))
print(optimisations_1(arr,q))
print(brute_force(arr,q))
print("Intro to how hashmaps work internally for DS Algos")Editor is loading...
Leave a Comment