Implement a queue using a singly linked list. Your queue should support the following operations:
enqueue(value: int): Add an item to the end of the queue.dequeue() -> int: Remove and return the item from the front of the queue. If the queue is empty, return -1.is_empty() -> bool: Check if the queue is empty.Example 1:
queue = Queue()
queue.enqueue(1)
queue.enqueue(2)
output: queue.dequeue() # returns 1
output: queue.dequeue() # returns 2
output: queue.dequeue() # returns -1
Example 2:
queue = Queue()
output: queue.is_empty() # returns True
queue.enqueue(5)
output: queue.is_empty() # returns False
10^5 elements.