package linklist;
public class Node {
public int iData;
public double dData;
public Node next;
public Node(int iData, double dData) {
this.iData = iData;
this.dData = dData;
}
public void displayLink() {
System.out.println("{" + iData + "," + dData + "}");
}
}
package linklist;
public class LinkList {
private Node head;
public LinkList() {
head = null;
}
public void insertFirst(int iData, double dData) {
Node newNode = new Node(iData, dData);
newNode.next = head;
head = newNode;
}
public Node find(int key) {
Node currentNode = head;
while (currentNode.iData != key) {
if (currentNode.next == null)
return null;
else
currentNode = currentNode.next;
}
return currentNode;
}
public Node delete(int key) {
Node currentNode = head;
Node previousNode = head;
while (currentNode.iData != key) {
if (currentNode.next == null)
return null;
else {
previousNode = currentNode;
currentNode = currentNode.next;
}
}
if (currentNode == head) {
head = head.next;
} else {
previousNode.next = currentNode.next;
}
return currentNode;
}
public void displayList() {
System.out.println("List(first-->last):");
Node currentNode = head;
while (currentNode != null) {
currentNode.displayLink();
currentNode = currentNode.next;
}
System.out.println();
}
public static void main(String[] args) {
LinkList linkList = new LinkList();
linkList.insertFirst(1, 12);
linkList.insertFirst(2, 234);
linkList.insertFirst(3, 11234);
linkList.insertFirst(4, 2342);
linkList.insertFirst(5, 2342);
linkList.insertFirst(6, 234);
linkList.insertFirst(7, 3452);
linkList.displayList();
Node find = linkList.find(4);
if (find != null)
System.out.println("The dData of the " + find.iData + " is "
+ find.dData);
else
System.out.println("There is no " + find.iData);
Node delete = linkList.delete(4);
if (delete != null) {
System.out.println("The dData of the " + delete.iData + " is "
+ delete.dData);
} else {
System.out.println("There is no " + delete.iData);
}
linkList.displayList();
}
}
转载于:https://my.oschina.net/mkh/blog/81532