题解 | #判断链表中是否有环#
判断链表中是否有环
https://www.nowcoder.com/practice/650474f313294468a4ded3ce0f7898b9
//golang. 哈希方法和双指针 package main import . "nc_tools" /* * type ListNode struct{ * Val int * Next *ListNode * } */ /** * * @param head ListNode类 * @return bool布尔型 */ /* func hasCycle(head *ListNode) bool { // write code here traveled := make(map[*ListNode]bool) for head != nil { if traveled[head] { return true } traveled[head] = true head = head.Next } return false } */ func hasCycle(head *ListNode) bool { // write code here if head == nil || head.Next == nil { return false } slow, fast := head, head.Next for slow != fast { if fast == nil || fast.Next == nil { return false } slow = slow.Next fast = fast.Next.Next } return true }