/*
第一次在CSDN写技术博客,接下来将会写一系列的关于算法实现的blog,不喜勿喷,欢迎一起讨论交流,在文章中若词有用错,请帮忙指出,谢谢。如果您的代码有更优之处,欢迎一起分享!
首先是关于链表的一些计算,包括大整数运算的实现,链表倒置,链表划分等...
*/
在以前实现链表的时候是将指针域、数据域与链表在一个类,但是后面发现使用这个链表要调用指针域的时候会很困难,所以把指针域和数据域与链表之间分开,这种链表定义格式是我看到一位博主的,非常幸运能看到那篇博客,谢谢。
class Node{
int data; //数据域
Node next; //指针域
public Node(int data){
this.data = data;
}
}
以后代码的格式都是分总的,首先都是方法的解说,然后再将方法与类之间结合
首先先定义一个链表类,字段不能用private,因为在外部要调用
class Link{
public Node head; //链表头
public Node current; //指针
}
在定义完一个链表结构后,如果我们想为链表添加数据,就要写一个AddLink()的方法,这个方法需要传入一个数据,然后保存至链表结点,如果头结点为空,则需要将数据当做头结点
public void addLink(int data){
//链表头为空,把数据保存到头结点
if(head == nul