mirror of
https://github.com/krahets/hello-algo.git
synced 2025-07-07 06:44:57 +08:00
Update the book based on the revised second edition (#1014)
* Revised the book * Update the book with the second revised edition * Revise base on the manuscript of the first edition
This commit is contained in:
@ -39,7 +39,7 @@ class ArrayDeque:
|
||||
print("双向队列已满")
|
||||
return
|
||||
# 队首指针向左移动一位
|
||||
# 通过取余操作,实现 front 越过数组头部后回到尾部
|
||||
# 通过取余操作实现 front 越过数组头部后回到尾部
|
||||
self._front = self.index(self._front - 1)
|
||||
# 将 num 添加至队首
|
||||
self._nums[self._front] = num
|
||||
@ -50,7 +50,7 @@ class ArrayDeque:
|
||||
if self._size == self.capacity():
|
||||
print("双向队列已满")
|
||||
return
|
||||
# 计算尾指针,指向队尾索引 + 1
|
||||
# 计算队尾指针,指向队尾索引 + 1
|
||||
rear = self.index(self._front + self._size)
|
||||
# 将 num 添加至队尾
|
||||
self._nums[rear] = num
|
||||
|
@ -30,8 +30,8 @@ class ArrayQueue:
|
||||
"""入队"""
|
||||
if self._size == self.capacity():
|
||||
raise IndexError("队列已满")
|
||||
# 计算尾指针,指向队尾索引 + 1
|
||||
# 通过取余操作,实现 rear 越过数组尾部后回到头部
|
||||
# 计算队尾指针,指向队尾索引 + 1
|
||||
# 通过取余操作实现 rear 越过数组尾部后回到头部
|
||||
rear: int = (self._front + self._size) % self.capacity()
|
||||
# 将 num 添加至队尾
|
||||
self._nums[rear] = num
|
||||
@ -40,7 +40,7 @@ class ArrayQueue:
|
||||
def pop(self) -> int:
|
||||
"""出队"""
|
||||
num: int = self.peek()
|
||||
# 队首指针向后移动一位,若越过尾部则返回到数组头部
|
||||
# 队首指针向后移动一位,若越过尾部,则返回到数组头部
|
||||
self._front = (self._front + 1) % self.capacity()
|
||||
self._size -= 1
|
||||
return num
|
||||
|
@ -30,7 +30,7 @@ class LinkedListQueue:
|
||||
|
||||
def push(self, num: int):
|
||||
"""入队"""
|
||||
# 尾节点后添加 num
|
||||
# 在尾节点后添加 num
|
||||
node = ListNode(num)
|
||||
# 如果队列为空,则令头、尾节点都指向该节点
|
||||
if self._front is None:
|
||||
|
Reference in New Issue
Block a user