diff --git a/src/chapter2/part2/MyLinkedList.py b/src/chapter2/part2/MyLinkedList.py index a0d2fe4..1bbffb7 100644 --- a/src/chapter2/part2/MyLinkedList.py +++ b/src/chapter2/part2/MyLinkedList.py @@ -49,6 +49,8 @@ def remove(self, index): # 删除头节点 removed_node = self.head self.head = self.head.next + if self.size == 1: + self.last == Node elif index == self.size - 1: # 删除尾节点 prev_node = self.get(index-1) diff --git a/src/chapter5/part9/RemoveKDigits.py b/src/chapter5/part9/RemoveKDigits.py index 390fcab..377e8f3 100644 --- a/src/chapter5/part9/RemoveKDigits.py +++ b/src/chapter5/part9/RemoveKDigits.py @@ -44,14 +44,12 @@ def remove_k_digits_v2(num, k): # 遍历到的当前数字入栈 stack.append(c) # 用栈构建新的整数字符串 - if new_length <= 0: - return "0" - return "".join(stack) + return "".join(stack[:new_length]) -print(remove_k_digits("1593212", 3)) -print(remove_k_digits("30200", 1)) -print(remove_k_digits("10", 2)) -print(remove_k_digits("541270936", 3)) -print(remove_k_digits("1593212", 4)) -print(remove_k_digits("10000100002", 2)) +print(remove_k_digits_v2("123456789", 3)) +print(remove_k_digits_v2("30200", 1)) +print(remove_k_digits_v2("10", 2)) +print(remove_k_digits_v2("541270936", 3)) +print(remove_k_digits_v2("1593212", 4)) +print(remove_k_digits_v2("10000100002", 2))