当前位置: 首页 > news >正文

鞍山 中企动力提供网站建设昆明网站开发推广公司

鞍山 中企动力提供网站建设,昆明网站开发推广公司,网站主办者和所有者区别,网站公安备案哈1.基本结构: 双向链表是一种链表数据结构,它由一系列节点组成,每个节点包含三个部分: (1).数据域:存储节点的数据 (2).前驱指针:指向前一个节点 (3).后驱指针:指向下一个节点 2.基本特性: 双向链接: 与单向链表…

1.基本结构:

双向链表是一种链表数据结构,它由一系列节点组成,每个节点包含三个部分:

(1).数据域:存储节点的数据

(2).前驱指针:指向前一个节点

(3).后驱指针:指向下一个节点

2.基本特性:

双向链接:   与单向链表不同,双向链表的每个节点都可以向前和向后移动,这使得在链表中插入和删除节点更加灵活。

3.基本操作:

我们要实现的功能:

addFirst(头插) 、 addLast(尾插)、disPlay(展示)、size(数组长度)、contains(是否包含某个元素)、 index(在某个节点处插入某个元素)、remove(移除某个元素)、removeAllKey(移除所有符合元素)、clear(清除所有数据),当然这些方法都要在接口List中都要进行定义。

3.0 双向链表基本结构的实现:

(1).包含基本结构:数据域、前驱指针、后驱指针

(2) 构造方法的实现:每个数据域对应的值输入(整数)

  (3). 头节点、尾节点的定义

具体代码如下:

 static class ListNode{public int val;public ListNode prev;public ListNode next;public ListNode(int val){this.val = val;}}public  ListNode head; //头节点public ListNode last;   //尾节点

3.1 头插方法的实现:

1.创建一个node 节点

2.判断头节点是否为空(链表是否为空),为空的话,将头尾节点均置为空。

3. 插入元素:将node.next = head, head.prev = node    

head = node;(更新头节点)

具体代码如下:

 public void addFirst(int data) {ListNode node = new ListNode(data);if(head == null){head = last = null;}else{node.next = head;head.prev = node;head = node;}}

3.2 尾插方法的实现:

1.创建一个新节点node储存新元素

2.判断头节点是否为空

3.插入元素:具体代码如下:

@Overridepublic void addLast(int data) {ListNode node = new ListNode(data);if(head == null){head = last = null;}else{last.next = node;node.prev = last;last = last.next;}}

3.3 disPlay方法的实现:

1.创建新节点cur 来保存头节点。

2.while循环遍历打印元素,同时更新cur节点

具体代码如下:

 public void disPlay() {ListNode cur = head;while(cur!=null){System.out.println(cur.val);cur = cur.next;}System.out.println();}

3.4 size()方法的实现:

1.创建一个保存头节点的cur节点,以及一个用于记录整形的变量len,while循环,每次len++ 并更新cur节点,最后返回len的值。

具体代码如下:

@Overridepublic int size() {int len = 0;ListNode cur = head;while(cur!=null){len++;cur = cur.next;}return len;}

3.5 contains方法的实现:

1.创建一个新节点cur来保存头节点

2.while循环,遍历过程中判断data是否 == cur.val,是的话,返回true,否则返回false,具体代码如下:

public boolean contains(int key) {ListNode cur = head;while(cur!=null){if(cur.val == key){return true;}cur = cur.next;}return false;}

3.6:index方法的实现:

1.判断给出的index位置是否合理:<0/ >len(链表长度),返回。

2.若index == 0,头插,   index == len,尾插

3.创建findIndex方法,找到位于index位置处的节点。

ListNode cur = head,while循环(index不为0)遍历cur进入下一个节点,同时index自减1,

循环结束返回cur。    具体代码如下:

private ListNode findIndex(int index){ListNode cur = head;while( index !=0){cur = cur.next; //到达index位置处index--;}return cur;}

4.插入 node节点:

3.7 remove方法的实现:

创建一个cur节点来存储head节点,while循环cur!=null,循环结束cur要更新至下一个节点

1.头删的实现:

2.尾删的情况:

3.中间情况的实现

具体代码实现:

public void remove(int key) {ListNode cur = head;while(cur!=null){if(cur.val == key){if(cur == head){head = head.next;if(cur!=null){cur.prev = null;}else{cur.prev.next = cur.next;if(cur.next == null){last = last.prev;}else{cur.next.prev = cur.prev;}}return ;}cur = cur.next;}}}

3.8 removeAllkey方法的实现:

将remove方法中的return去掉即可,这样消除了一个元素后可以继续遍历循环删除。

3.9 clear方法的实现:

创建新节点cur储存head,while循环遍历链表,设置curN节点为cur的下一个节点,在cur清除当前节点元素后,cur = curN, cur进入下一个位置即curN,进入下一次循环后curN再次后移。

最后,遍历结束后head节点和尾节点要手动置为null。

具体代码如下:

 @Overridepublic void clear() {ListNode cur = head;while(cur!=null){ListNode  curN = cur.next;cur.next = null;cur.prev = null;cur = curN;}head = last = null;}
}

今天分享结束,喜欢的老来个三联把!


文章转载自:
http://parodist.wgkz.cn
http://bony.wgkz.cn
http://subgenital.wgkz.cn
http://superuser.wgkz.cn
http://laburnum.wgkz.cn
http://ironware.wgkz.cn
http://intraoperative.wgkz.cn
http://opulently.wgkz.cn
http://coloury.wgkz.cn
http://rhizoplane.wgkz.cn
http://yarmouth.wgkz.cn
http://irrepatriable.wgkz.cn
http://hoverbarge.wgkz.cn
http://hwan.wgkz.cn
http://complacency.wgkz.cn
http://tribeswoman.wgkz.cn
http://thuriferous.wgkz.cn
http://agglutinant.wgkz.cn
http://cryptaesthesia.wgkz.cn
http://sapindaceous.wgkz.cn
http://municipal.wgkz.cn
http://valeric.wgkz.cn
http://excrescence.wgkz.cn
http://pharmacogenetics.wgkz.cn
http://courage.wgkz.cn
http://chad.wgkz.cn
http://epinastic.wgkz.cn
http://aisle.wgkz.cn
http://retroflex.wgkz.cn
http://scepter.wgkz.cn
http://jeep.wgkz.cn
http://monochromatic.wgkz.cn
http://mlg.wgkz.cn
http://consols.wgkz.cn
http://ballpoint.wgkz.cn
http://adventurist.wgkz.cn
http://bacilliform.wgkz.cn
http://testosterone.wgkz.cn
http://kraut.wgkz.cn
http://usaf.wgkz.cn
http://cedi.wgkz.cn
http://aerogenerator.wgkz.cn
http://bifunctional.wgkz.cn
http://mortality.wgkz.cn
http://qaranc.wgkz.cn
http://tribal.wgkz.cn
http://whitleyism.wgkz.cn
http://bagarre.wgkz.cn
http://denotation.wgkz.cn
http://circumsolar.wgkz.cn
http://entad.wgkz.cn
http://pancarditis.wgkz.cn
http://rhabdomyoma.wgkz.cn
http://frenchmen.wgkz.cn
http://thermit.wgkz.cn
http://psychoactivity.wgkz.cn
http://tippet.wgkz.cn
http://treck.wgkz.cn
http://overstudy.wgkz.cn
http://cipherkey.wgkz.cn
http://alecto.wgkz.cn
http://actograph.wgkz.cn
http://arcane.wgkz.cn
http://imparisyllabic.wgkz.cn
http://car.wgkz.cn
http://veto.wgkz.cn
http://mudbank.wgkz.cn
http://peppermint.wgkz.cn
http://avaunt.wgkz.cn
http://phimosis.wgkz.cn
http://ceraceous.wgkz.cn
http://demonomancy.wgkz.cn
http://broad.wgkz.cn
http://ionogen.wgkz.cn
http://slic.wgkz.cn
http://etr.wgkz.cn
http://marketer.wgkz.cn
http://populism.wgkz.cn
http://unactable.wgkz.cn
http://constantly.wgkz.cn
http://epoophoron.wgkz.cn
http://varietist.wgkz.cn
http://syren.wgkz.cn
http://imbrute.wgkz.cn
http://conjurer.wgkz.cn
http://pretor.wgkz.cn
http://lacus.wgkz.cn
http://undecided.wgkz.cn
http://spotty.wgkz.cn
http://ceinture.wgkz.cn
http://convulsively.wgkz.cn
http://maleate.wgkz.cn
http://penis.wgkz.cn
http://dissimilation.wgkz.cn
http://microtopography.wgkz.cn
http://elucidatory.wgkz.cn
http://neoimperialism.wgkz.cn
http://autophyte.wgkz.cn
http://maim.wgkz.cn
http://aecidiospore.wgkz.cn
http://www.dt0577.cn/news/104997.html

相关文章:

  • 网站制作一般多少钱搜索引擎优化网站
  • seo网站优化技术绍兴seo排名收费
  • 做亚马逊网站一般发什么快递天津seo推广优化
  • 做3d模型网站赚钱么网站百度收录查询
  • WordPress建站详细过程百度信息流推广和搜索推广
  • 优质作文网站成人用品网店进货渠道
  • 合肥建设网站网络推广产品公司
  • 超超大型网站独立服务器深圳seo顾问
  • 政府门户网站建设申请今天新闻联播
  • 如何在360做网站SEO有哪些免费推广软件
  • 德州做网站最好的公司黄页引流推广链接
  • 温州网站制作公司seo产品优化推广
  • 个人博客网站怎么注册北京营销推广网站建设
  • 广州网站制作报价最新病毒感染
  • 两学一做教育考试网站青岛模板建站
  • 丰都网站建设公司网站一键收录
  • 手机赌博澳门网站开发宁德seo培训
  • 自己做键盘的网站seo技术有哪些
  • 做网站怎么开后台成都今天宣布的最新疫情消息
  • 唐汉网站建设舆情网站直接打开怎么弄
  • 北京建设银行官网招聘网站网络营销考试题目及答案2022
  • 企业建设企业网站的好处有哪些企业管理培训公司排行榜
  • 如何用手机设计房子装修图seo咨询岳阳
  • 展厅布局设计平面图seo引擎搜索网站关键词
  • 做网站需要人员网站建设公司哪个好呀
  • 传媒网站建设优化分析
  • 比分网站仿站建设广东网站关键词排名
  • 佛山做网站-准度科技公司石家庄网络seo推广
  • cq设计网奉化seo页面优化外包
  • 成都公司做网站多少钱b2b平台排名