![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指Offer
mxxxkuku
这个作者很懒,什么都没留下…
展开
-
剑指 Offer 05. 替换空格 58 - II. 左旋转字符串 Python 3
替换空格思路:转换为列表将空格替换class Solution: def replaceSpace(self, s: str) -> str: string = list(s) n = len(s) for i in range(n): if string[i] == ' ': string[i] = '%20' return ''.join(string)方原创 2021-12-23 16:31:02 · 638 阅读 · 0 评论 -
剑指 Offer 06. 从尾到头打印链表 24. 反转链表 35. 复杂链表的复制 Python 3
从尾到头打印链表单向链表:数据+指针(存储地址),只可根据next指针遍历查找,查询慢,插入和删除快,不知道前驱节点时删除和插入的时间复杂度都为O(n),若给定前驱节点则时间复杂度为O(1)。思路:递归链表,将所有值存入list,倒序输出时间复杂度O(n)class Solution: def reversePrint(self, head: ListNode) -> List[int]: # 存入列表,倒序输出 printlist = li.原创 2021-12-22 18:07:21 · 758 阅读 · 0 评论 -
剑指 Offer 09. 用两个栈实现队列 30. 包含min函数的栈 Python 3
两个栈实现队列栈:先进后出队列:先进先出重点:deleteHead思路:需要删除时,如果B中有值,pop,否则将A中所有值pop至Bclass CQueue: def __init__(self): self.A, self.B = [], [] def appendTail(self, value: int) -> None: self.A.append(value) def deleteHead(self) -&.原创 2021-12-17 15:37:20 · 520 阅读 · 0 评论