链表代码中常见用法区别:
一般此代码用在没有头结点或者需要双指针遍历等情况
1.初始化一个空节点,没有赋值,指针指向为list
(不推荐)
ListNode list = new ListNode();
2.初始化一个空节点,初始赋值为0,指针指向为list
ListNode list = new ListNode(0);
3.初始化一个空节点,初始赋值为0,并且list的下一个next指针指向head,指针指向为list
ListNode list = new ListNode(0,head);
4.定义一个空链表
ListNode list=null;
通常定义一个空节点还需要有节点的next指针指向,否则只是定义一个空节点
ListNode list = new ListNode(0,head);
或者
ListNode list = new ListNode(0);
list.next=head;