链表中环的问题

原创 2016年06月01日 22:29:02

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.
 * class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) {
 *         val = x;
 *         next = null;
 *     }
 * }
 */
public class Solution {
       public boolean hasCycle(ListNode head){
       if(head == null || head.next == null) return false;
       if(head.next == head) return true;
       ListNode nextNode = head.next; 
       head.next = head;
       boolean isCycle = hasCycle(nextNode);
       return isCycle;
   }
    // public boolean hasCycle(ListNode head) {
   
    //  if(head==null||head.next==null){
    //      return false;
    //  }
    //  ListNode first=head;
    //  ListNode last=head.next;
    //  while(last!=null){
    //      first=first.next;
    //      last=last.next;
     
    //      if(first==last){
    //          return true;
    //      }
         
    //  }
    //  return false;
     
    // }
}


版权声明:如有不同见解、欢迎批评和指正

相关文章推荐

约瑟夫环问题(C 链表)

  • 2010年11月19日 17:26
  • 1KB
  • 下载

约瑟夫环问题的亲身实践(和循环链表有关)!

最近一直在复习数据结构的相关内容,首先回顾的就是链表这一非常基础和重要的数据结构,而其中的循环链表问题又非常有趣。比如约瑟夫环问题。笔者在回避参考资料的情况下自己写出了如下代码,仅供诸位参考,如果有考...

c++链表,解决约瑟夫环问题

  • 2010年05月11日 16:51
  • 2KB
  • 下载

C++循环链表解决约瑟夫环问题,Qt编程

问题描述: 约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出...

循环链表实现约瑟夫环问题

  • 2013年11月06日 11:12
  • 1KB
  • 下载

链表解决约瑟夫环问题

第一次做约瑟夫环问题,欢迎大家来找茬~ 如果做单循环链表时有点晕了,要画图要画图要画图,重要的事讲三遍,因为真的是很好的方法。#include #includetypedef struct link...

单链表解决约瑟夫环问题

  • 2015年11月11日 22:31
  • 527B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:链表中环的问题
举报原因:
原因补充:

(最多只允许输入30个字)