链表
链表是一种线性表,链表中每一个节点包含数据和下一个节点的位置信息。
构造链表类,类里应该包含该节点数据(val)和下一个节点的位置信息(next)C语言里用指针,我们在这里用类的声明。构造方法用来给节点传数据,还需要一个添加节点的方法(addNtote1),该方法采用递归的思想。
链表的遍历
使用ArrayList列表来存储每一个节点的数据即可。
源代码
package nowcoderPractice;
import java.util.ArrayList;
public class ListNode {
public static ArrayList<ListNode> list=new ArrayList<ListNode>();
public static int count=0;
public static ArrayList<Integer> data=new ArrayList<Integer>();//存放节点数据的列表
public int val;//存储数据
public ListNode next;//存储结点的变量
public ListNode(int val)
{
this.val=val;
}
public ListNode() {};
//添加节点方法1
public void addNode1(int newdata)
{
ListNode newNode=new ListNode(newdata);
if(this.next==null)
{
this.next=newNode;
data.add(newdata);
}
else
{
this.next.addNode1(newdata);
}
}
}