LRU Implementation

Hii Team.
I wanted to dicuss about the code that i had written for LRU implementation in python. So i request you all to please go through it and let me know that if this code will be better to write in interview or not. Thanks.

#implmentation of lru in python:

class LRU:
    def __init__(self,maxsize):
        self.queue=[]
        self.map=set()
        self.maxsize=maxsize
        self.pagehit=0

    def insert(self, value):
        if value in self.map:
            if len(self.queue)<=self.maxsize:
                self.queue.remove(value)
                self.queue.insert(0,value)
                self.pagehit+=1
                
        else:
            if len(self.queue)==self.maxsize:
                self.map.discard(self.queue[len(self.queue)-1])
                self.queue.pop()
                self.queue.insert(0,value)
            elif len(self.queue)<self.maxsize:
                self.queue.insert(0,value)
            self.map.add(value)
            
lru = LRU(3)
arr = [1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5]

for element in arr:
    lru.insert(element)
print(lru.pagehit)
Comments (0)