单向链表
public class Link {
public long data;
public Link next;
public Link(long data) {
this.data = data;
}
public void displayLink() {
System.out.print("[" + data + "]");
}
}
public class LinkList {
private Link frist;
public LinkList() {
frist = null;
}
public boolean isEmpty() {
return frist == null ? true : false;
}
public void insertFrist(long data) {
Link newLink = new Link(data);
newLink.next = frist;
frist = newLink;
}
public Link deleteFrist() {
Link temp = frist;
frist = frist.next;
return temp;
}
public void displayLinkList() {
Link current = frist;
while (current != null) {
current.displayLink();
current = current.next;
}
}
public Link find(long key) {
Link current = frist;
while (current.data != key) {
if (current.next != null) {
current = current.next;
} else {
return null;
}
}
return current;
}
public Link delete(long key) {
Link current = frist;
Link previous = frist;
while (current.data != key) {
if (current.next != null) {
previous = current;
current = current.next;
} else {
return null;
}
}
if (current == frist) {
frist = frist.next;
} else {
previous.next = current.next;
}
return current;
}
}

浙公网安备 33010602011771号