Description
Design your implementation of the linked list. Implement get, addAtHead, addAtTail, addAtIndex, and deleteAtIndex operations. Return the result as an array.
Examples
Input:
["addAtHead",1],["addAtTail",3],["addAtIndex",1,2],["get",1],["deleteAtIndex",1],["get",1]Output:
[null,null,null,2,null,3]Explanation:
Linked list operations.
Input:
["addAtTail",5],["addAtTail",7],["get",0],["addAtHead",2],["get",0],["deleteAtIndex",0],["get",0]Output:
[null,null,5,null,2,null,5]Explanation:
The linked list operations return [null,null,5,null,2,null,5].
Input:
["addAtIndex",0,10],["addAtIndex",1,20],["get",2],["deleteAtIndex",0],["deleteAtIndex",0],["get",0]Output:
[null,null,-1,null,null,-1]Explanation:
The linked list operations return [null,null,-1,null,null,-1].
Constraints
- •
0 ≤ index, val ≤ 1000