版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
//在不确定数据域数值的情况下,采用泛型定义publicclassNode<E>{Edata;//数据域Node<E>next;//指针域}datanext单个节点的表示方法//在不确定数据域数值的情况下,采用泛型定义publicclassLinkList<E>{ Node<E>head;Node<E>p;}datanext单个节点的表示方法datanextdatanextheadnull建立链表datanextheadNULLnewnode//说明head头指针newnode新节点指针newnode.data数据域表示方式newnode.next指针域表示方式NULLnewnode无后继节点headNULLPNULL初始状态,无节点
head=NULL;P=NULL;publicLinkList(){head=null;p=null;}初始化datanextheadNULLpnewode建立链表publicvoidaddhead(Node<E>e){Node<E>newhead=newNode<E>();newhead.data=e.data;newhead.next=e.next;head=newhead;p=head;p.next=null;}遍历输出publicvoidprintlist(){ p=head; if(head==null) {System.out.println("这是一个空链表"); }while(p!=null)
{System.out.println(p.data); p=p.next; }}在链表后面插入节点datanextheadNULLnewnodedatanextp注意:添加节点后,链表的长度+1publicvoidaddlist(Node<E>e){Node<E>newnode=newNode<E>();newnode.data=e.data;newnode.next=e.next;p.next=newnode;p=p.next;p.next=null;}publicstaticvoidmain(String[]args){ScannerAA=newScanner(System.in);LinkList<Integer>obj1=newLinkList<Integer>();Node<Integer>tt=newNode<Integer>();System.out.print("请输入第1数:");tt.data=AA.nextInt();obj1.addhead(tt);Node<Integer>tb=newNode<Integer>();intk;inti=2;do{System.out.print("请输入第"+i+"数:");k=AA.nextInt();if(k==0)break;tb.data=k;obj1.addlist(tb);i++;}while(true);此段代码:表示连续建立多个节点,知道输入的数字为0,就不再建立新的节点obj1.printlist();System.out.print("请输入第插入节点的值");tb.data=AA.nextInt();obj1.addnode(tb,2);obj1.printlist();System.out.print("请输入首节点插入的值");tb.data=AA.nextInt();obj1.addH(tb);obj1.printlist();}单链表的插入(1)只定节点后插入新的节点图示
s.next=p.next;p.next=s;(2)前插结点
(2)只定节点前插入新的节点图示
s.next=p;q.next=s;单链表的删除
q.next=p.next;p.next=null;单链表的按值查找操作 }
单链表操作的效率分析
(1)单链表是一种顺序存取结构,不是随机存取结构。要访问任意一个结点ai(1≤i≤n),必须从头指针head开始,沿着“链”的方向逐个查找,执行i-1次p=p.getNext()操作,平均进行n/2次。(2)单链表的插入和删除操作,必须知道其直接前驱结点。(3)与顺序表相比,单链表中结点的存储空间是动态申请和释放的,不需要预先分配。同时,对单链表执行插入和删除操作时,只需要改变相关结点的“链”,不需要移动结点。因此,单链表在一定程度上可以提高运行效率和存储空间的利用率。循环链表
head是单链表的头指针,设rear是单链表的尾指针。将单链表中最后一个结点的指针域指回链表的头结点,即rear.next=head,则整个单链表头尾相连形成了一个环,就构成了循环单链表。
双向链表
在单链表中,从任意一个结点出发都能通
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 临港新建超声波设备调试服务中心建设项目可行性研究报告
- 过程拼音教学模板课件
- 中成药质量控制实验室可行性研究报告
- 工厂展示课件
- 观潮下载课件
- 观潮课件下载课件
- 财务管理师考试综合测试卷及答案
- 2026年企业国际化经营模拟试题及答案
- 公共营养师营养食谱设计与营养评价专项题库及答案
- 消防安全设计审查与验收专项训练题库及答案
- 新版2026年新教材统编版九年级上册道德与法治期末复习全册考点提纲
- 羊绒衫制作工安全操作规程
- 新版2026秋新苏教版小学科学五年级上册全册知识点考点合集
- 2027兴业银行校园招聘笔试参考题库及答案详解
- ASME B31.3-2024 中文版(工艺管道规范 引用 ASME V 卷无损检测要求)
- 武汉产业投资控股集团有限公司招聘笔试参考题库及答案详解
- 2026年海南发展控股公司招聘试题及答案
- 2025年山东公务员考试行测真题完整版(含答案+详细解析)
- 肿瘤类器官模型应用
- 《JBT 20114.4-2009 糖浆剂瓶封口机》专题研究报告
- 喷涂工序低温烘干控制规范
评论
0/150
提交评论