美文网首页
141.环形链表

141.环形链表

作者: Maxinxx | 来源:发表于2019-07-05 21:21 被阅读0次

    题目

    给定一个链表,判断链表中是否有环。

    程序核心思想

    方法非常简单,准备一个hashset,遍历每一个节点,如果遍历的当前节点不在hashset中,那么添加进hashset,然后遍历下一个,直到遍历的节点在hashset中了,那么就是有环的,返回true,或者是遍历到最后(出现了null)也没有发现其出现在hashset中,那么返回false。

    Tips

    hashset的方法.png

    代码

    /**
     * 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) {
            HashSet<ListNode> hs = new HashSet<ListNode>();
            
            while(head != null){
                if(!hs.contains(head)){
                    hs.add(head);
                    head = head.next;
                }else{
                    return true;
                }
            }
            return false;
        }
    }
    

    相关文章

      网友评论

          本文标题:141.环形链表

          本文链接:https://www.haomeiwen.com/subject/ezeyhctx.html