Q1

 avatar
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