【LeetCode】[PHP] 141 环形链表 执行出错“Fatal error: Nesting level too deep”问题解决
2022/2/5 11:12:43
本文主要是介绍【LeetCode】[PHP] 141 环形链表 执行出错“Fatal error: Nesting level too deep”问题解决,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
141.环形链表
题目链接: https://leetcode-cn.com/problems/linked-list-cycle/description/
使用方法: 快慢指针法
执行出错信息:Line 19: PHP Fatal error: Nesting level too deep - recursive dependency? in solution.php
问题解决情况: 已解决
报错代码:
/** * Definition for a singly-linked list. * class ListNode { * public $val = 0; * public $next = null; * function __construct($val) { $this->val = $val; } * } */ class Solution { /** * @param ListNode $head * @return Boolean */ function hasCycle($head) { $fast = $head->next; $slow = $head; // if($fast){} while(($fast!=null) && ($slow!=null) && ($fast->next!=null)){ if($fast == $slow){ return true; } $fast = $fast->next->next; $slow = $slow->next; } return false; } }
执行出错原因: 使用“快慢指针法”解答题目时,上方错误代码中,while循环中的if条件部分代码(即比较代码),$fast ==$slow
为双等号,非严格比较,因此出现报错。
解决方法: 将while循环中的if语句()内的比较内容修改为$fast === $slow
或$fast !== $slow
,即对$fast
和$slow
进行严格比较。
详细分析: 该题目中,是使用class ListNode{}来声明的,即题目中声明的这个ListNode的基类型是一个类,因此在后续运用中,是对该类的实例化对象进行比较,因此需要使用严格比较。(此为目前的想法,如有错误欢迎指正)
参考文章:https://stackoverflow.com/questions/3834791/fatal-error-nesting-level-too-deep-recursive-dependency
这篇关于【LeetCode】[PHP] 141 环形链表 执行出错“Fatal error: Nesting level too deep”问题解决的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-03-29env: php: no such file or directory
- 2024-03-01php foreach break
- 2024-02-26Exception参数 php-icode9专业技术文章分享
- 2023-12-30PHP文件批量上传-icode9专业技术文章分享
- 2023-12-30thinkphp6 withJoin-icode9专业技术文章分享
- 2023-12-27MagicArray:像php一样,让Go业务代码不再卷!
- 2023-11-18centos7编译安装PHP教程。
- 2023-11-18centos7编译安装phpMyAdmin教程。
- 2023-10-13唱衰这么多年,PHP 仍然还是你大爷!
- 2023-07-25PHP8,性能更好,语法更好,类型安全更完善