问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java数据结构和算法

发布网友 发布时间:2022-04-21 01:01

我来回答

4个回答

热心网友 时间:2022-06-16 23:48

首先看存储方式, 这个list, 只保存一个link的引用, 作为链表的头, 然后通过这个头.next, 得到第二个, 第二个.next得到第三个, 一次类推, 知道.next == null 的时候, 说明list结束.

那么现在分两种情况看:
1. 当当前链表里面没有元素的时候, 那么就添加一个, 然后让它的next = first, 也就是为null, 那么链表在遍历的时候, 访问了第一个, 然后第一个.next == null, 链表就到头了.

2.当当前链表里面有元素的时候, 那么因为方法叫做firstinsert, 也就是添加头元素, 所以先声明一个link = newlink, 然后让newlink, 的next 指向之前list.first素, 那么现在newlink就变成了第一个, 而之前那个变成了第二个, 然后再把newlink的引用赋给first, 这样, 链表的头就变成了newlink, 达到了first insert的目的.

first的引用就是我上面分析的两种情况, 一种是没有元素就是null, 另一种情况是有, 变成了第二个, 因为这个list要有结束的位置, 否则就无限长了, 结束的条件就是遍历list的时候, 最后一个元素.next == null, 这样list就停住了我大体画个图吧, 你看看:

第一种情况: 当队列中没有元素的时候
列表中什么都没有 : [ (head)null ]
有一个newlink {nl}
执行完newlink.next=first; {nl} -> null
执行完first=newlink; [ (head){nl} -> null ];
这样list的头就是newlist, 只有它一个元素.

第二中情况: 当队列中有元素的时候:
假设当前头元素为{oldhead}
[ (head){oldhead} -> {obj1} -> {obj2} ... {objn} -> null]
有一个newlink {nl}
执行完newlink.next=first; {nl} -> {oldhead}
执行完first=newlink; [ (head){nl} -> {oldhead} -> {obj1} -> {obj2} ... {objn} -> null]
这样list的头就是newlist, 而oldhead就变成了第二个元素, 后面的元素以此类推.

热心网友 时间:2022-06-16 23:48

原来是链表..

热心网友 时间:2022-06-16 23:48

这个方法是第一次插入列表时用的,这时候next还没有,所以要做的事情是把此link放入first,把null放入next。
就这个情况来看,first初始时null。newlink.next=first;和newlink.next=null;是一个意思,都是把next设为null;
first=newlink;是把列表第一个设为此link

热心网友 时间:2022-06-16 23:49

这是将first给予newlink.next,再将其复制。
就类似于String temp = 0;
temp = A;
A = B;
B = temp;
你可以说temp是0吗?其实不是这样的,只是这是一种赋值的方式。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
圣斗士星矢正义传说攻略_圣斗士星矢正义传说新手攻略 圣斗士星矢正义传说怎么觉醒圣衣 圣衣玩法攻略 圣斗士星矢正义传说召唤石怎么获得 获取攻略一览 超市促销员手机上打卡迟到几分钟 在超市里打卡显示的公司是什么意思? 长鹿休闲度假农庄交通指南 求从容桂到长鹿农庄怎么坐车,详细,准确 形容神情的五字词语 女生内衣穿多久该扔掉 吴江离张家港有多远? java中的数据结构与算法。 java 数据结构与算法 JAVA数据结构与算法 差评怎么写更打击卖家 如何应对差评? 情商高的人给差评是怎么给的? 怎样回复差评 如何巧妙回复差评? 遇到差评该怎么办 淘宝差评怎么处理? 被差评怎么办 遇到差评怎么解决 咸鸭和黑鱼一起怎样烧 好吃 鸭子怎么烧才好吃? 咸鸭腿怎么做好吃又简单 咸干鸭子怎么做好吃 咸鸭烧什么东西好吃 咸鸭怎么做好吃呀? 腌好的晒干的鸭子怎么做才好吃? 苹果11拍照技巧 Java 与 算法+数据结构 (100分) java数据结构和算法一些问题 谁会java数据结构与算法啊? java(树的内容)算法与数据结构 算法与数据结构对于Java程序员意味着什么? Java数据结构和算法的编辑推荐 java数据结构与算法的书,哪本好? java数据结构和算法 Java面试笔试,数据结构和算法考到什么程度? Java数据结构和算法的目录 电脑qq登录界面卡住怎么办 如何改变QQ登录窗口的大小 QQ登录界面怎么修改 qq登陆界面怎么改 QQ登陆界面的设置在哪? qq登录界面弹不出来 如何更换QQ登陆界面 怎样改变QQ登陆界面 梅艳芳是因为什么原因去世的? 爱上表姐怎么办?