![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
刷题
Suzerk
这个作者很懒,什么都没留下…
展开
-
93. 复原 IP 地址——回溯分割
表明已经分割完成了。如果每一个ip符合条件,就可以把他们加进结果集合里面。是回溯中分割问题的一道比较典型的题目。循环内部条件与回溯模版一致,每一次。判断是否是ip地址使用函数。同理之前的题目,路径。收集每一个结果,最后。原创 2023-07-12 12:00:09 · 311 阅读 · 0 评论 -
40. 组合总和 II——回溯去重
博主也尝试了在找到路径之后再进行去重的方式,但是本题超时了,所以还是使用以上的方式。在等于目标值时,意味着找到了一条路径,我们把它放进结果里面。很明显,这样的去重方式需要重复元素相邻,所以需要对数组进行。其实,大致的思路差不多,但多了去重的操作。,当后一个数字等于前一个数字的时候,我们跳过。当然,也可以使用以前的方式写在。这题展示了回溯算法在组合中的优化,需要进行。因为结果在参数里面,所以不需要返回值。的时候我们就需要跳过他,避免又找到。为例子,我们在处理第一个。组合,那么在遇到第二个。原创 2023-07-10 16:14:54 · 215 阅读 · 0 评论 -
17. 电话号码的字母组合——回溯组合
输出:[“ad”,“ae”,“af”,“bd”,“be”,“bf”,“cd”,“ce”,“cf”]进行遍历选择,然后递归调用它之后的数字。回溯的本质就是暴力算法,首先把映射字典。(也就是其中一个字母组合)以及总结果。输入:digits = “23”,每一次我们将其中一个字母放进。了,此时我们将路径传入总结果。进行处理,找出他的映射。例如,在示例中,我们选中。原创 2023-07-09 18:40:08 · 375 阅读 · 0 评论 -
450. 删除二叉搜索树中的节点
这题帮助我们解决了二叉搜索树的删除节点的办法。原创 2023-07-09 10:24:20 · 265 阅读 · 0 评论 -
递归与迭代——404. 左叶子之和
求解,发现迭代方法更加简单。其实,代码就是在原本后序遍历的迭代法基础上加上条件语句。博主熟悉递归,所以一开始使用递归方式来解题,发现有一定难度。这是一道简单题,但实际上并不是很简单。方法比较合适,先处理出节点的关于左节点的左叶子和。在处理完递归方法之后,尝试使用。并按照题意加上左叶子的值。原创 2023-06-20 22:55:17 · 65 阅读 · 0 评论 -
KMP算法——28. 找出字符串中第一个匹配项的下标
KMP算法在字符串不匹配的时候提供了一种简单的方式,使得模式串。真的很难理解,所以在这里进行一个整理。今天在做字符串匹配的问题的时候想起了。回退到正确的位置,这里我们需要使用。:没有最长相等前后缀,的时候不符合要求(不等于。,查看相同的前缀(也就是。(方便进行比较),也是其。位置进行进一步的对比。表示为最长相等前后缀的。),那我们就需要寻找。原创 2023-06-11 14:20:32 · 586 阅读 · 0 评论 -
19.删除链表的倒数第N个节点
整理一下这题的思路,题目很清晰,给你一个链表,删除链表的倒数第。是在需要删除的元素的前一个位置。个结点,并且返回链表的头结点。第一反应暴力算出一共几个节点。的初始是指向头结点的,所以。后面观察发现,如果先让。原创 2023-06-05 17:03:38 · 71 阅读 · 0 评论 -
24. 两两交换链表中的节点
是都涉及到的,所以23的顺序不能换,而第一步可以随意。表示具备两两交换的条件。原创 2023-06-04 18:22:02 · 42 阅读 · 0 评论 -
单链表——移除链表元素、设计链表
单链表单链表的基本结构: class ListNode: def __init__(self, val, next=None): self.val = val self. Next = next移除链表元素接下来这题,涉及链表的删除:203. 移除链表元素class Solution: def removeElements(self, head: Optional[ListNode], val: int) -> Optional[ListNo原创 2023-06-03 21:59:09 · 79 阅读 · 0 评论 -
双指针滑动窗口整理2——最小覆盖子串
接着上一篇继续整理。原创 2023-06-02 18:31:10 · 603 阅读 · 0 评论 -
双指针滑动窗口整理1——长度最小的子数组、水果成篮
双指针原创 2023-05-30 20:42:11 · 684 阅读 · 0 评论 -
移除元素的两种方法——双指针
今日复习了数组部分,对以下题目做了一个整理。这里将不再详细讲述两层for循环的暴力算法。其大致思路是:第一层for循环遍历每一个元素,找到值为val的元素之后,从该位置将每一个元素往前移动一位进行覆盖;整体数组长度减1。原创 2023-05-29 22:26:42 · 601 阅读 · 0 评论 -
二分查找——x的平方根
今日复习了二分查找,练习了力扣上面的一些题目,记录了其中的一些题目。在关于求平方根或是完全平方数的题目中可以使用二分法。这道题目也可以用二分查找的思想来进行解答。在python中可以使用。原创 2023-05-29 21:00:47 · 152 阅读 · 0 评论 -
BM24 二叉树的中序遍历
描述 牛客刷题给定一个二叉树的根节点root,返回它的中序遍历结果。数据范围:树上节点数满足0≤n≤1000,树上每个节点的值满足 0≤val≤1000进阶:空间复杂度 O(n),时间复杂度 O(n)。递归的步骤:确认递归函数的参数和返回值确认终止条件确认单层递归的逻辑需要注意的是Python有递归深度的约束,默认为1000import sysprint(sys.getrecursionlimit()) #1000可以通过sys.setrecursionlimit()来更改最大深原创 2022-05-13 12:11:22 · 311 阅读 · 0 评论 -
软件测试题目整理
Beta测试是验收测试的一种【验收测试是由用户进行确认是否接受一个系统验证性测试。Alpha是潜在客户在开发场地进行的测试;“Beta”是客户自己的环境】单元测试用例主要是根据详细设计。这里指的是V模型。自顶向下测试:较早验证了主要控制和判断点;需要开发桩模块;可以及时发现设计上的错误。白盒测试主要有:逻辑覆盖和基本路径测试。边界值分析:最小值、略高于最小值、正常值、略低于最大值和最大值处取输入变量值,记为:min、min+、nom、max-、max考虑到健壮性测试,还可以加一个略大于最大值以及.原创 2022-05-06 22:07:51 · 1465 阅读 · 0 评论 -
算法-链表-BM10 两个链表的第一个公共结点
牛客入口输入两个无环的单向链表,找出它们的第一个公共结点,如果没有公共节点则返回空。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的)。下图来自牛客:这里使用快慢法则,将两条链表串在一起。即curA走完pHead1链表就去走pHead2链表,curB也是一样。如果两链表存在交点,则必然在交点相遇。例如,A链表为1+1,B链表为2+1,那么curA在走完A的2个节点后,进入B再走两个节点;与curB在走完B的3个节点后,进入A再走一个节点;相遇在交点处。都走了4原创 2022-05-03 11:19:27 · 699 阅读 · 0 评论 -
螺旋矩阵2
所有元素,且元素按顺时针顺序螺旋排列的。正方形矩阵 matrix。原创 2022-05-02 11:27:49 · 296 阅读 · 0 评论 -
算法-动态规划2 最小花费爬楼梯
746. 使用最小花费爬楼梯爬楼梯力扣入口给你一个整数数组 cost ,其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。请你计算并返回达到楼梯顶部的最低花费。在这里插入代码片...原创 2022-04-16 10:04:29 · 559 阅读 · 0 评论 -
算法-数组-二分查找
704. 二分查找力扣入口给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。class Solution: def search(self, nums: List[int], target: int) -> int: left=0 right=len(nums)-1 while(left<=right):原创 2022-04-15 21:01:09 · 263 阅读 · 0 评论 -
算法-动态规划1 斐波那契数及其优化- 爬楼梯
509. 斐波那契数斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0,F(1) = 1F(n) = F(n - 1) + F(n - 2),其中 n > 1此题可以使用递归方法求解;递归公式已经给出。class Solution: def fib(self, n: int) -> int: if(n<2): return原创 2022-04-15 10:57:29 · 429 阅读 · 0 评论