Squares of a Sorted Array&Spiral Matrix
Handwritten notes
Code
Design Linkedlist
class MyListNode:
def __init__(self, val):
self.val = val
self.next = None
class MyLinkedList:
def __init__(self):
self.head = MyListNode(-1)
self.size = 0
def get(self, index: int) -> int:
if index < 0 or index >= self.size:
return -1
dummy = self.head
for i in range(index + 1):
dummy = dummy.next
return dummy.val
def addAtHead(self, val: int) -> None:
self.addAtIndex(0, val)
def addAtTail(self, val: int) -> None:
self.addAtIndex(self.size, val)
def addAtIndex(self, index: int, val: int) -> None:
if index > self.size:
return
if index < 0:
index = 0
dummy = self.head
for i in range(index):
dummy = dummy.next
node = MyListNode(val)
node.next = dummy.next
dummy.next = node
self.size += 1
def deleteAtIndex(self, index: int) -> None:
if index < 0 or index >= self.size:
return
dummy = self.head
for i in range(index):
dummy = dummy.next
dummy.next = dummy.next.next
self.size -= 1
Reverse Linkedlist
class Solution:
def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]:
cur = head
pre = None
while(cur!=None):
temp = cur.next
cur.next = pre
pre = cur
cur = temp
return pre
Near graduation, I did not do the questions according to the schedule. But, I will slowly make up for it afterwards.