单链表的两种创建方式:头插法尾插法
package data.structure.link;
public class SingleLink {
private int num;
private Node head;
public SingleLink(int num,Node head) {
this.num=num;
this.head=head;
}
/*
* 尾插法
*/
public void createHeadInsert() {
Node tail=head;
for(int i=0;i<num;i++) {
Node p=new Node();//创建一个新节点
p.data=i;//设置数据域
p.next=null;
tail.next=p;
tail=p;
}
}
/*
* 前插法
*/
public void beforeHeadInsert() {
Node tail=null;
for(int i=0;i<num;i++) {
Node p=new Node();//创建一个新节点
p.data=i;//设置数据域
p.next=tail;
tail=p;
}
head.next=tail;
}
/*
* 链表输出
*/
public void pop() {
while(head!=null) {
Node node=head.next;
if(node!=null) {
System.out.print(node.data+" ");
head=node;
}else {
break;
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method