目录
节点类的实现ListNode
在LinkList类中建立表头与各种方法
LinkList类
头插法
尾插法
获取链表的长度
节点类的实现ListNode
public class ListNode {
//这是链表的节点
int val;
ListNode next;
//val存储元素
//next 纸箱下一个节点
public ListNode(int value){
this.val = value;
}
public String toString(){
return "ListNode{ val="+val+"next="+next+"}";
}
}
在LinkList类中建立表头与各种方法
LinkList类
public class LinkList {
ListNode head = null;
}
头插法
//头插法
public void HeadInsert(int value){
ListNode newNode = new ListNode(value);
if(head == null){
head = newNode;
return;
}
newNode.next = head;
head = newNode;
}
尾插法
//尾插法1,参数是val,不需要创建节点,自动创建,再连接
public void EndInsert(int val){
ListNode newNode = new ListNode(val);
if(head == null){
head = newNode;
return;
}
ListNode Index = head;
while (Index.next !=null){
Index = Index.next;
}
Index.next = newNode;
}
//尾插法2,参数是ListNode,需要自己创建节点,再连接
public void EndInsert(ListNode newNode ){
if(head == null){
head = newNode;
return;
}
ListNode Index = head;
while (Index.next !=null){
Index = Index.next;
}
Index.next = newNode;
}
获取链表的长度
//获取链表的长度
public int GetLength(){
ListNode tempNode = head;
//从头开始数
int length = 0;
while(tempNode!=null){
length++;
tempNode = tempNode.next;
}
System.out.println(length);
return length;
}
|