Java程序设计之链表结构

王朝学院·作者佚名  2016-05-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

java程序设计之链表结构唉,说点废话,昨天偶尔看到一年前自己用C解约瑟夫环问题的循环链表,唏嘘不已,想想自己一年前嵌入式的梦呢,这两天发生了许多,而有些人不在了就真的不在了,心情不好,不多说了,直接上代码,只是些链表的基本操作,花些功夫看就好了。

首先,建立一个Node类,里面内构一个Node对象和数据(用来区分);

public class Node { PRotected Node next; //指针 protected int data; //数据 public Node(int data){ this.data = data; } //显示节点 public void display(){ System.out.println(data+" "); }}

然后创建一个LinkList类,里面包含了链表的一些基本方法,

public class LinkList { public Node first; //定义一个头结点 public LinkList(){ this.first = null; } //插入一个头结点 public void addFirstNode(int data){ Node node = new Node(data); node.next = first; first = node; } //删除一个头节点,并返回头结点 public Node deleteFirstNode(){ Node tempNode = first; first = tempNode.next; return first; } //在替换掉index后面的节点。 public void add(int index , int data){ Node node = first; Node current = first; while(index-->0){ current = node.next; node = current; } current.data = data; } //在第index节点后面插入节点 public void Insert(int index , int data){ Node node = new Node(data); Node current = first; Node privious = first; while(index-->0){ privious = current; current = current.next; } node.next = current; privious.next = node; } //删除任意位置的节点 public void delete(int index){ Node current = first; Node privious = first; while(index-->0){ privious = current; current = current.next; } if(current == first){ first = first.next; }else{ privious.next = current.next; } } //根据data的值删除节点,删除找到的第一个节点 public void deleteData (int data){ Node privious = first; Node current = first; while(current.data!=data){ privious = current; current = current.next; } if(current == first){ first = first.next; }else{ privious.next = current.next; } }}

再建立一个主类,

public class TestLink { public static void main(String[] args){ LinkList l = new LinkList(); l.addFirstNode(1); l.addFirstNode(2); l.addFirstNode(3); Node node = l.first; l.Insert(2, 5); l.deleteData(5); while(node!=null){ node.display(); node = node.next; } }}

实在是没有心情继续写了,希望以后会好点,2015年8月9日18:55分。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航