码迷,mamicode.com
首页 > 编程语言 > 详细

研磨数据结构与算法-04链表

时间:2015-09-19 19:53:43      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:private   display   public   null   

一,链表的节点

/*

 * 链结点,相当于是车厢

 */

public class Node {

//数据域

public long data;

//指针域

public Node next;

public Node(long value) {

this.data = value;

}

/**

* 显示方法

*/

public void display() {

System.out.print(data + " ");

}

}

二,简单链表

/*

 * 链表,相当于火车

 */

public class LinkList {

//头结点

private Node first;

public LinkList() {

first = null;

}

/**

* 插入一个结点,在头结点后进行插入

*/

public void insertFirst(long value) {

Node node = new Node(value);

node.next = first;

first = node;

}

/**

* 删除一个结点,在头结点后进行删除

*/

public Node deleteFirst() {

Node tmp = first;

first = tmp.next;

return tmp;

}

/**

* 显示方法

*/

public void display() {

Node current = first;

while(current != null) {

current.display();

current = current.next;

}

System.out.println();

}

/**

* 查找方法

*/

public Node find(long value) {

Node current = first;

while(current.data != value) {

if(current.next == null) {

return null;

}

current = current.next;

}

return current;

}

/**

* 删除方法,根据数据域来进行删除

*/

public Node delete(long value) {

Node current = first;

Node previous = first;

while(current.data != value) {

if(current.next == null) {

return null;

}

previous = current;

current = current.next;

}

if(current == first) {

first = first.next;

} else {

previous.next = current.next;

}

return current;

}

}


测试:

public class TestLinkList {

public static void main(String[] args) {

LinkList linkList = new LinkList();

linkList.insertFirst(34);

linkList.insertFirst(23);

linkList.insertFirst(12);

linkList.insertFirst(0);

linkList.insertFirst(-1);

// linkList.display();

//

// linkList.deleteFirst();

// linkList.display();

//

// Node node = linkList.find(23);

// node.display();

Node node1 = linkList.delete(0);

node1.display();

System.out.println();

linkList.display();

}

}


本文出自 “8159085” 博客,请务必保留此出处http://8169085.blog.51cto.com/8159085/1696290

研磨数据结构与算法-04链表

标签:private   display   public   null   

原文地址:http://8169085.blog.51cto.com/8159085/1696290

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!