首页 > 其他分享 >20230303 2.0. 数组和链表

20230303 2.0. 数组和链表

时间:2023-06-21 16:37:44浏览次数:43  
标签:结点 20230303 元素 private 链表 数组 双向 2.0

数组

数组是最基本的构造类型,它是一组相同类型数据的有序集合。数组中的元素在内存中连续存放,用数组名和下标可以唯一地确定数组元素。

链表

链表是一种重要的基础数据结构,也是实现 复杂数据结构 的重要手段。它不按照线性的顺序存储数据,而是由若干个同一结构类型的“结点”依次串接而成的,即每一个结点里保存着下一个结点的地址(指针)。

链表又分 单向链表双向链表 以及 循环链表 等。

单向链表

结构

使用结构的嵌套来定义单向链表结点的数据类型

@Data
public class Node {
    private Object data;
    private Node next;
}

常见操作

  1. 链表的建立

  2. 插入结点

  3. 删除结点

  4. 遍历

双向链表

@Data
public class DNode {
    private Object data;
    private DNode next;

    private DNode previous;
}

如果将双向链表最后一个单元的Next指针指向链表的第一个单元,而第一个单元的Previous指针指向链表的最后一个单元,这样构成的链表称为 双向循环链表

双向链表的插入、删除和遍历基本思路与单向链表相同,但需要同时考虑前后两个指针

例题

给定一个单链表L,请设计函数Reverse将链表L就地逆转,即不需要申请新的结点,将链表的第一个元素转为最后一个元素,第二个元素转为倒数第二个元素……

标签:结点,20230303,元素,private,链表,数组,双向,2.0
From: https://www.cnblogs.com/huangwenjie/p/17490482.html

相关文章

  • 20230303 2.1. 线性表及其实现
    如何表示多项式?\[f(x)=a_0+a_1x+...+a_{n-1}x^{n-1}+a_nx^n\]方法1:顺序存储结构直接表示\(a[i]\):项\(x^i\)的系数\(a_i\)例如:\[f(x)=4x^5-3x^2+1\]下标i012345a[i]10-3004问题:浪费空间,例如\(x+3x^{2000}\)方法2:顺序存储结构表示非零项......
  • ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+错误的处理
    1、原因这个问题是python版本安装的urllib3版本过高,而openssl版本太低导致的2、解决方法2.1、升级openssl版本#[email protected]#[email protected]#安装好后,查看openssl版本是否升级到最新python......
  • 深入揭示Web 2.0核心技术——混搭
    《Web2.0Mashup开发实战》任何一本书想要做到面面俱到都不易。但拿到《Web2.0Mashup开发实战》这本书时,我却觉得这确实是一本内容相当全面的教材。翻开目录,XML、JavaScript、SOAP、Ajax……各种与Web应用和开发相关的词都跃入眼帘。是的,从混搭的理念出发,我们就是要把所有相关的......
  • PHP Web 2.0开发实战
    如何使用ZendFramework、Smarty、Ajax创建一流的网站 “读完本书后,我发现自己对Web开发和MVC模式的理解都已经今非昔比……强烈推荐此书!”——Amazon.com “……一部极富启发性的PHP实战指导书,业界专家充分演示了如何使用ZendFramework、Smarty、A......
  • 141. 环形链表 及其相关
    141.环形链表1.哈希表法:将节点依次加入set,如果有重复就是有环。publicclassSolution{publicbooleanhasCycle(ListNodehead){Set<ListNode>set=newHashSet<ListNode>();while(head!=null){if(!set.add(head)){......
  • UG NX12.0 完整版安装图文教程、注册激活破解方法
    下载UG12.0中文版压缩包,pan.baidu.com/s/1_yYzHgKEznoqe_ijkDDuYw?pwd=rsyh并解压UGNX12.0版压缩包,打开文件,用记事本的方式打开splm8文件。右击计算机属性,高级设置,即可看到你电脑的计算机全面,然后全选复制。把splm8里面的管家二字删掉,将计算机名粘贴进去,然后保存文件,关掉即......
  • SQL语句_链表(下)
    Store_Info表:store_namesalesdateA50001-01-2000B20002-01-2000A150002-10-2000D100003-08-2000Sales表:salesdate20002-01-2000100003-08-200060004-08-200075005-08-2000表链接查询除了可以使用JOIN,还可以使......
  • Ubuntu22.04安装FFmpeg
    参考文章https://phoenixnap.com/kb/install-ffmpeg-ubuntu依次输入以下三个命令即可sudoaptupdate&&sudoaptupgradesudoaptinstallffmpegffmpeg-version 安装好以后可以通过以下命令验证一下:ffplay 视频文件 看能否正常播放  参考文章复制粘贴如下:I......
  • 关于线性结构中的双向链表如何实现?
    前言在上一篇文章中,主要是给大家介绍了单向链表的特点及其原理,但是我们没有通过代码进行练习。今天我会继续通过一篇文章,来给大家讲解双向链表的内容,尤其是会通过代码来进行链表的操作,希望大家重点关注哦。全文大约【3500】字,不说废话,只讲可以让你学到技术、明白原理的纯干货!......
  • this version of the Java Runtime only recognizes class file versions up to 52.0
    在SAPCommerceCloudBackoffice做fullindexing时,遇到错误消息:ERROR:Errorfromserverathttps://localhost:8983/solr:ErrorCREATEingSolrCore'master_backoffice_backoffice_product_flip':Unabletocreatecore[master_backoffice_backoffice_product......