![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法题-刷
文章平均质量分 50
你的铭称
诚
展开
-
【力扣一轮】344.反转字符串 && 541.反转字符串Ⅱ
两个指针向中间移动,反转字符串即可。原创 2024-05-24 22:54:50 · 529 阅读 · 0 评论 -
【力扣一轮】15.三数之和 && 18.四数之和
刚开始是准备用之前的方法哈希进行查找。但是题目中说到不能有重复的元素值。所以直接看视频讲解。视频用到双指针法。先对整个数组进行排序,接着对数组每个元素遍历。如果第一个元素就大于0,那么直接返回空。因为正数列表怎么加都不能为0。left和right以及当前遍历的数值,如果三者相加为正,则说明要减少其和,right要向左移动;如果三者相加为负,则说明要增加其和,left要向右移动。那么去重操作怎么做?👇Q1=》判断还是?A1=》前者如果contine,会把有重复的元素的结果集给筛掉。而后者则不会。原创 2024-05-23 20:47:46 · 393 阅读 · 0 评论 -
【力扣一轮】454.四数之和 && 383.赎金信
为什么能想到这里,注意到它的和是0,(和可以是任何数)这样就相当于两两数组为一对,看其中一对数组中的元素,在另外一对数组中是否出现了相反数。这里的一对说的是A+B或其他组合方式,(不重要,因为都是随机的)然而以上想法截止到第二句,都没问题,需要注意的是,不是全对应。A2:因为在存储时,不仅要存储对应的元素,也要存储元素出现的次数,所以用到map。结合之前的有效字母异位符,数组,set,map,使用数组即可。也就是说如果一对数组中有两个-2,另一对数组中只有一个2,那么计算为0的次数为2。原创 2024-05-22 18:44:11 · 537 阅读 · 0 评论 -
【力扣一轮】202.快乐数 && 1.两数之和
202.快乐数力扣链接代码随想录链接思路看到这一题没思路,直接看题解。发现其中一个难点在于“无限循环”,这个字眼可以转换成退出条件。退出条件就有两种,一种是这个数字是快乐数,一种是这个数字不是快乐数。如果是快乐数好说,判断结果是否为1即可。如果不是呢?就需要看无限循环。无限循环的意思翻译下就是判断之后出现的结果,是否在之前的哈希表中存在。如果存在,则说明这个数字是快乐数。另外一个难点就是怎么对其计算出数字之和?发现用循环解决的。伪代码当结果集合不存在1时 得到一个计算结果 判断这个结原创 2024-05-21 11:38:46 · 527 阅读 · 0 评论 -
【力扣一轮】字符串异位 && 数组并集
先验知识记录:遇到哈希问题,想到三种数据结构:①数组:适用于哈希值比较小,范围较小,②set:适用于哈希值较大。③map:如果需要用到键值对,则用之。原创 2024-05-20 16:48:59 · 331 阅读 · 0 评论 -
【力扣一轮】寻找环入口
也是用双指针法,快指针每次两步,慢指针每次一步。这两个指针慢慢地走入一个环。如果快指针和慢指针相遇了,那么就说明有环。但此时有环还不够,还要去找到环的入口。此时我不理解了(2024年5月19日)。原创 2024-05-19 00:07:25 · 150 阅读 · 0 评论 -
【力扣一轮】删除倒数第k个节点 & 找到共同节点
思路:两个链表,短的链表要向长的链表尾部对齐。此时不需要头节点,因为不需要操作,只需要遍历。原创 2024-05-17 12:31:01 · 214 阅读 · 1 评论 -
【力扣一轮】反转链表 & 两两交换
刚开始想以暴力解决,新建一个链表,接着不断地头插。但实践下来发现新建的节点总是会被覆盖。所以听课后采用双指针解法。题目思路:其实自己的问题还是在于没有把链表连起来。两个元素交换后,会导致节点的丢失。现在想想,对应的指针没有明确。不过(2024年5月16日)暂时不理解的是,为什么我的思路不可以……对于双指针而言,就需要有一个额外的临时指针存第n+2个节点的地址。因为是第一遍,所以递归的用法暂时不理解,也没看。什么时候需要虚拟头节点?此时不需要虚拟头节点。原创 2024-05-16 15:15:35 · 275 阅读 · 0 评论 -
【力扣一轮】链表常见操作
教训:①老老实实解题,自己设想的各种情况不切实际不要搞。跟随代码随想录刷题,今日只是学习链表的各种操作。②注意是下标还是位置。原创 2024-05-15 14:00:20 · 140 阅读 · 2 评论 -
【力扣一轮】链表-删除链表指定值的元素
代码随想录-链表-删除指定值的元素原创 2024-05-14 12:14:19 · 237 阅读 · 0 评论 -
【力扣一轮】数组-旋转矩阵
这时需要用到循环不变量,它是一个循环,每次处理的时候需要处理的方式是一样的,而不是有着条件的限制。2.对于进入再次循环的条件,没有考虑到,具体体现在for循环中用到了n,而n是作为退出条件改变了。对于这道题,循环不变量就是边元素的处理,只处理当前边的起始元素,不处理当前边的末尾元素。3.对于奇数矩阵和偶数矩阵的处理,没有考虑到中间值。对于奇数矩阵还是偶数矩阵,只是多加一个元素指定值。以上4点,导致看了4次卡尔老师的代码,才完成。1.对于循环退出条件,没有考虑到,需要设置。调试之后,发现自己欠缺考虑有几点。原创 2024-05-14 11:21:07 · 259 阅读 · 0 评论