java数据结构单链表.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java数据结构单链表

第一个类public class Onelink1 //单链表类{ protected Onelinknode head; public Onelink1() //构造空的单链表 { head=null; } public Onelink1(Onelinknode h1) //构造由h1指向的单链表 { head=h1; } public Onelink1(int n) //建立的单链表 { Onelinknode p,q; head=new Onelinknode(0); if (n0) { p=head; for(int i=1;i=n;i++) { int k=(int)(Math.random()*100); q=new Onelinknode(k); p.next=q; p=q; } } } public int length() //返回链表的长度 { int n=0; Onelinknode p=head; while(p!=null) { n++; p=p.next; } return n; } public void output() //输出head指向的单链表 { this.output(head.next); } public void output(Onelinknode p) //输出p指向的单链表 { while(p!=null) { System.out.print(p.data); p=p.next; if(p!=null) System.out.print(-); } System.out.println(); } }对单链表操作类public class Onelink2 extends Onelink1{ public Onelink2(int n) { super(n); //执行超类的构造方法 } public Onelink2(Onelinknode h1) { super(h1); //执行超类的构造方法 } //将一个单链表分解成两个单链表(奇数和偶数) public Onelink2(Onelinknode h1,Onelinknode h2) { Onelinknode pre,p,q; pre=h1; p=h1.next; q=h2; while(p!=null) if(p.data%2!=0) { q.next=p;q=p;p=p.next;pre.next=p; } else {pre=p;p=p.next;} q.next=null; } //单链表逆转 public void reverse(Onelinknode h) { Onelinknode p=h.next,q=p; h.next=null; while(p!=null) { q=p.next; p.next=h.next; h.next=p; p=q; } } public static void main(String args[]) { Onelink2 s1=new Onelink2(10); System.out.print(初始链表: ); s1.output(); s1.reverse(s1.head); System.out.print(逆转后链表:); s1.output(); Onelinknode p=new Onelinknode(0); Onelink2 s2=new Onelink2(p); Onelink2 s3=new Onelink2(s1.head,s2.head); System.out.print(偶数链表:); s3.output((s1.head).next); System.out.print(奇数链表:); s3.output((s2.head).next); }}结点类public class Onelinknode //单链表的结点类{ public int data; public Onelinknode next; public Onelinknode(int k) //构造值为k的结点 { data=k; next=null; }}

文档评论(0)

cgtk187 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档