关于JAVA数据结构堆栈用链表实现的问题 想问问入栈代码的作用就是代码功能怎么实现的 不要把思

关于JAVA数据结构堆栈用链表实现的问题想问问入栈代码的作用就是代码功能怎么实现的不要把思维逻辑和代码逻辑混合,最好分开讲解,最后三行代码首先节点类node完毕,没显示出... 关于JAVA数据结构堆栈用链表实现的问题

想问问入栈代码的作用就是代码功能怎么实现的

不要把思维逻辑和代码逻辑混合,最好分开讲解,最后三行代码

首先
节点类 node完毕,没显示出来
具体是
节点数据 data
节点域 next
我提供了get set方法

MyLInkeySTack类中

声明一个
头节点head.头节点不存放数据,head初始化为空

入栈时候
push..方法中有参数
把data.数据new.给新的节点n
那么问题来了下面代码到底在干嘛!
第一行n的set. 的head.getnxte.
如果我没记错的话,head的next是空的,意思把
新的节点N设置成头节点head的空值,
head的下一个就是新节点n,

不知道这些想对不对,求大神解释下,最好把get,set也详细说明,
-
展开
 我来答
魔都TnU
2015-03-10 · 超过32用户采纳过TA的回答
知道答主
回答量:58
采纳率:0%
帮助的人:43.9万
展开全部
晚上3点还在学习,你也真是蛮拼的。
不知道你Node的代码是怎样的,getNext和setNext方法具体内容。姑且按你说的,head为null,Next为下一Node节点来说吧。(其实我觉得setNext应该是set data的值才对,不是Next。不过没所谓了。按你假设的来说吧)

初始化时,MyLinkedStack中的head如下:head.data=null, head.next=null;
然后第一次入栈,倒数第三行时,n如下:n.data=data, n.next=null;
倒数第二行的head链如下:head.data=null, head.next=n;

若是有再次入栈,我设Node对象为n1,然后数据为data1吧。那n1新建的时候也是:n1.data=data1, n1.next=null;
倒数第三行的n1如下:n1.data=data1, n1.next=n;
倒数第二行的head链如下:head.data=null, head.next=n1, n1.next=n;

当然,这是不知道你getNext和setNext具体代码的情况下,我觉得是head.data=n1, head.next=n;这样才好的。重点来了:栈是后进先出的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式