为什么以下用php实现的链表尾插法,修改$temp变量会影响到$linkList?
代码如下:
<?php
class Node
{
public $data;
public $next;
}
//创建一个链表
$linkList = new Node();
$linkList->next = null;
$temp = $linkList;
for ($i = 1; $i <= 10; $i++) {
$node = new Node();
$node->data = "aaa{$i}";
$node->next = null;
$temp->next = $node;
$temp = $node;
}
var_dump($linkList);
die;
我比较疑惑的问题是这行代码
$temp = $linkList;
按照我的理解,temp 这个变量应该只是 linkList 变量的拷贝而已,为什么我对 temp 变量的尾插会影响到 linkList 变量。其实也就是实现了对链表的尾插。### 题目描述
题目来源及自己的思路
相关代码
粘贴代码文本(请勿用截图)
你期待的结果是什么?实际看到的错误信息又是什么?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
对象是引用的,是拷贝,但是是浅拷贝。
参考