![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
文章平均质量分 64
期邈云汉
这个作者很懒,什么都没留下…
展开
-
LeetCode141.环形链表
环形链表的判断问题。链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。使用快慢指针,当快指针进入环里的时候,相当于这要flow慢指针一旦进入环,快指针将会开始追赶,其实根据分析,flow走1步,fast走2步这样的步长是肯定可以追上的。快慢指针的思想就是引入两个节点指针flow和fast指针,在步长上慢指针flow一次走一个节点,而快指针一次可以走两个节点,或者更多。相当于是N + 1 - 3 = N - 2和N + 1 - 4 = N - 3,那么最终N能否为0,取决于N的大小。原创 2022-10-05 19:02:41 · 464 阅读 · 0 评论 -
LeetCode189.轮转数组
轮转数组。空间换时间,可以考虑开辟一个新的长度为numsSize的变长数组,先把后k个元素放到新数组的前k个,再把前面的n - k个元素拷贝到新数组后n - k个。暴力解法:双重循环,取出最后一个元素,tmp = arr[numsSize - 1],依次把前n - 1个元素向后挪一位,再把arr[0] = tmp,循环。代码中加上 if 判断语句为了实现不同长度的数组实例都可以用改代码跑出结果,实际上leetcode执行代码时会不止实例的数据,会测试很多数据。在Intellij IDEA环境下测试代码如下。原创 2022-05-10 21:57:48 · 108 阅读 · 0 评论 -
LeetCode17.04. 消失的数字
消失的数字 题目描述: 数组nums包含从0到n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在 O(n)时间内完成吗? 分析:这里提供两种比较比较好的思路。 题目中的数组是从0 — n,少其中一个数字,则对0—n个连续数求和在逐个减去原数组中的数,即可得到缺失的数字。 //Leetcode题目环境 class Solution { public int missingNumber(int[] arr) { //获得数组的n项和原创 2022-05-10 09:51:25 · 102 阅读 · 0 评论