如何在java中获取LinkedList的头节点?
这是LeetCode21合并两个linkedlist的问题,我尝试下面给出的最佳解决方案 但我还是会出错如何在java中获取LinkedList的头节点?,java,data-structures,linked-list,Java,Data Structures,Linked List,这是LeetCode21合并两个linkedlist的问题,我尝试下面给出的最佳解决方案 但我还是会出错 class Solution { public ListNode mergeTwoLists(ListNode l1, ListNode l2) { ListNode one = l1.head; ListNode two = l2.head; LinkedList res=new LinkedList();
class Solution {
public ListNode mergeTwoLists(ListNode l1, ListNode l2)
{
ListNode one = l1.head;
ListNode two = l2.head;
LinkedList res=new LinkedList();
while(one.val!= null && two.val!= null)
{
if(one.val<=two.val)
{
res.addLast(one.val);
one=one.next;
}
else
{
res.addLast(two.val);
two=two.next;
}
}
//if second list finish
while(one.val!=null)
{
res.addLast(one.val);
one=one.next;
}
//if first list finish
while(two.val!=null)
{
res.addLast(two.val);
two=one.next;
}
return res;
}
}
类解决方案{
公共ListNode合并列表(ListNode l1、ListNode l2)
{
listnodeone=l1.head;
listnodetwo=l2.head;
LinkedList res=新建LinkedList();
while(one.val!=null&&two.val!=null)
{
如果(one.val,我们也可以递归执行:
public class Solution {
public static final ListNode mergeTwoLists(
final ListNode l1,
final ListNode l2
) {
if (l1 == null) {
return l2;
}
if (l2 == null) {
return l1;
}
final ListNode merged;
if (l1.val < l2.val) {
merged = l1;
merged.next = mergeTwoLists(l1.next, l2);
} else {
merged = l2;
merged.next = mergeTwoLists(l1, l2.next);
}
return merged;
}
}
公共类解决方案{
公共静态最终列表节点MergeTwoList(
最终列表节点l1,
最终列表节点l2
) {
if(l1==null){
返回l2;
}
if(l2==null){
返回l1;
}
合并最终列表节点;
if(l1.val
只需使用一个=l1,两个=l2。您将获得列表的标题。