142. 环形链表 II AND 633. 平方数之和
142. 环形链表 II
思路:利用快慢指针(Floyd 判圈法)。给定两个指针, 分别命名为 slow 和 fast,起始位置在链表的开头。每次 fast 前进两步,slow 前进一步。如果 fast 可以走到尽头,那么说明没有环路;如果 fast 可以无限走下去,那么说明一定有环路,且一定存 在一个时刻 slow 和 fast 相遇。当 slow 和 fast 第一次相遇时,我们将 fast 重新移动到链表开头,并 让 slow 和 fast 每次都前进一步。当 slow 和 fast 第二次相遇时,相遇的节点即为环路的开始点。(参考LeetCode 101)
/*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/
struct ListNode *detectCycle(struct ListNode *head) {struct ListNode *slow,*fast;slow = fast = head;do{if(fast == NULL || fast->next == NULL)return NULL;fast = fast->next->next;slow = slow->next;}while(slow != fast);//走到此处,说明存在环fast = head;while(fast != slow){fast = fast->next;slow = slow->next;}return fast;
}
633. 平方数之和
介于c 的取值范围,因此在计算的过程中可能会发生int型溢出的情况,需要使用long 型避免溢出。
bool judgeSquareSum(int c){long a,b;a = 0; b = (int)sqrt(c);while(a <= b){long sum = a*a + b*b;if(sum == c)return true;else if(sum < c)a++;else if(sum > c)b--; }return false;
}
代码原理,参考这位大佬,写的超级好https://leetcode.cn/problems/sum-of-square-numbers/solution/shuang-zhi-zhen-de-ben-zhi-er-wei-ju-zhe-ebn3/
142. 环形链表 II AND 633. 平方数之和相关推荐
- 【Leetcode】拿捏链表(四)——160. 相交链表、141. 环形链表、142. 环形链表 II
作者:一个喜欢猫咪的的程序员 专栏:<Leetcode> 喜欢的话:世间因为少年的挺身而出,而更加瑰丽. --<人民 ...
- LeetCode-链表-142. 环形链表 II
描述 142. 环形链表 II 给定一个链表,返回链表开始入环的第一个节点. 如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 ...
- 142. 环形链表 II golang
142. 环形链表 II 给定一个链表,返回链表开始入环的第一个节点. 如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始 ...
- LeetCode 142 环形链表 II
题目描述 给定一个链表,返回链表开始入环的第一个节点. 如果链表无环,则返回 null.为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开 始). 如果 po ...
- 【LeetCode】【HOT】142. 环形链表 II(快慢指针)
[LeetCode][HOT]142. 环形链表 II 文章目录 [LeetCode][HOT]142. 环形链表 II package hot;class ListNode{int val;List ...
- LeetCode 142. 环形链表 II(Linked List Cycle II)
142. 环形链表 II 142. Linked List Cycle II 题目描述 给定一个链表,返回链表开始入环的第一个节点.如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整 ...
- 如何判断链表中是否存在环?Floyd判圈算法 leetcode刷题笔记 142. 环形链表 II
这道题使用了floyd判圈算法,所以先讲解floyd算法的原理和实现,最后在附加上第142题的代码. floyd算法: 一.用途: 可以在有限状态机.迭代函数或者链表上判断是否存在环,求出该环的起点与 ...
- LeetCode 142. 环形链表 II - Python 快慢指针法+详解
题目 142. 环形链表 II 难度中等761 给定一个链表,返回链表开始入环的第一个节点. 如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的 ...
- 142. 环形链表 II
142. 环形链表 II 给定一个链表,返回链表开始入环的第一个节点. 如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始 ...
- C#刷遍Leetcode面试题系列连载(4): No.633 - 平方数之和
点击蓝字"dotNET匠人"关注我哟 加个"星标★",每日 7:15,好文必达! 前文传送门: 上篇文章中一道数学问题 - 自除数,今天我们接着分析 LeetC ...
最新文章
- 节能信标组雌雄双煞 - 来自于洛阳理工学院信标组的车模
- python php perl,python 调用 php 范例
- xalan_如何以10倍速加速Apache Xalan的XPath处理器
- LeetCode 459. 重复的子字符串(数学)
- 【译】Redis喜提新数据结构:Redis Streams
- Android2.2 新特性
- 运用incremental backup恢复归档GAP的DG-上篇
- 64位MicrosoftOfficeWord加载EndnoteX7
- 华为安装gsm框架_华为gms框架app下载-华为gms框架2020版下载最新版-乐游网安卓下载...
- IAR开发环境的搭建以及CC2530单片机程序编程实验
- ApacheCN 活动汇总 2019.8.16
- 循环小题题库存档(期末复习)
- 基于74hc573的数码管模块测试
- python中trun是什么意思_Python 中 'unicodeescape' codec can't decode bytes in position XXX: trun錯誤解決方案...
- 户外运动耳机如何选择、最优秀的五款户外运动耳机推荐
- 20个免费下载PSD设计网站
- 互联网快讯:百世供应链发力汽配赛道;极米NEW Z6X升级版Z6X Pro上线;美的发布方舱医院集成化解决方案
- 二分图的匹配——匈牙利算法
- python实验六 语音信号处理
- 动手深度学习——Pytorch 入门语法一