剑指offer学习笔记
文章平均质量分 61
作者是算法小白,想通过刷题进行学习,一起努力吧
X_sm
这个作者很懒,什么都没留下…
展开
-
剑指offer【学习笔记】---字符串(python)
题目一:替换空格 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 示例 : 输入:s = “We are happy.” 输出:“We%20are%20happy.” 来源:力扣(LeetCode) 解题思路 在python中字符串是不可变的,不能直接进行修改的某一字符所以需要新建一个字符串来修改; 首先我们初始化一个列表res 然后遍历s中的每一个字符,当字符c等于空格时,列表中添加%20,否则直接添加字符c 最后将列表转换为字符串并返回 算法实现 class Solution:原创 2022-01-08 22:51:04 · 300 阅读 · 0 评论 -
剑指offer【学习笔记】---链表(python)
题目一:从头到尾打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 来源:力扣(LeetCode) 解题思路 链表的特性性是只能从前到后遍历节点,所以我们可以借用栈来倒序输出各节点的值 首先遍历链表,将各节点的值依次压入栈中,然后依次出栈并返回。 算法实现 class Solution: def reversePrint(self, head: ListNode) -> List[int]: stack = [] while head原创 2022-01-08 21:36:00 · 226 阅读 · 0 评论 -
剑指offer【学习笔记】---栈与队列(python)
题目一:用两个栈实现队列 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 来源:力扣(LeetCode) 想要在队列尾部插入整数可以在一个栈中实现,但是要在头部删除整数,就需要另外一个栈来辅助操作。 解题思路: 要想将新加入的元素出现栈底,将stack1视为队列 在队列尾部插入整数: 将stack1中的队列转移到stack2,在sta原创 2022-01-07 19:40:15 · 821 阅读 · 0 评论