【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-12-19php8的协程和hyperf的协程有什么区别?-icode9专业技术文章分享
- 2024-12-19php8 的fiber是什么?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-11-29使用PHP 将ETH账户的资产汇集到一个账户
- 2024-11-23怎么实现安卓+php 热更新方案?-icode9专业技术文章分享
- 2024-11-22PHP 中怎么实现判断多个值是否为空、null 或者为 false?-icode9专业技术文章分享
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享