博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode 141. Linked List Cycle
阅读量:4098 次
发布时间:2019-05-25

本文共 658 字,大约阅读时间需要 2 分钟。

题目:

Given a linked list, determine if it has a cycle in it.

Follow up:

Can you solve it without using extra space?

思路:

判断一个链表中是否有循环,运用快慢指针,如果有循环,肯定会相遇

代码:

/** * Definition for singly-linked list. * struct ListNode { *     int val; *     ListNode *next; *     ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public:    bool hasCycle(ListNode *head) {         ListNode *slow = head;         ListNode *fast = head;         while(fast != NULL && fast->next != NULL){
//用快慢指针方法,如果有循环 fast = fast->next->next; if(fast == slow){
//则一定存在相遇情况 return true; } } return false; }};

转载地址:http://qsmii.baihongyu.com/

你可能感兴趣的文章
Ubuntu Could not open lock file /var/lib/dpkg/lock - open (13:Permission denied)
查看>>
collect2: ld returned 1 exit status
查看>>
C#入门
查看>>
查找最大值最小值
查看>>
杨辉三角
查看>>
冒泡排序法
查看>>
C#中ColorDialog需点两次确定才会退出的问题
查看>>
大学计算机基础--1
查看>>
大学计算机基础--2
查看>>
Templates in Flask & MVC pattern
查看>>
Linux 常用命令
查看>>
Problems & Solutions -- 7 MySQLdb in python
查看>>
Django学习笔记 --1 Hello world!
查看>>
Django学习笔记 -- 2 正则表达式
查看>>
CS50 2016-Week 0 学习笔记
查看>>
CS50 2016-Week 1 学习笔记
查看>>
CS50 2016-Week 2 学习笔记
查看>>
CS50 2016-Week3 学习笔记
查看>>
CS50 2016-Week4 学习笔记
查看>>
CS50 2013-Week5 学习笔记
查看>>