Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我喜欢在线合并链表解决方案,但我不喜欢';我不能真正理解while循环_Javascript_Linked List - Fatal编程技术网

Javascript 我喜欢在线合并链表解决方案,但我不喜欢';我不能真正理解while循环

Javascript 我喜欢在线合并链表解决方案,但我不喜欢';我不能真正理解while循环,javascript,linked-list,Javascript,Linked List,我已经在线获得了merge函数,但是我并不真正理解while循环中的条件。因此,对于(L1!==null&&L2!==null),我不确定什么是L1!==空值实际检查。是检查linkedList L1的第一个节点是否有值,还是检查linkedList L1是否为linkedList?为什么?有人能看一下吗?谢谢 function merge(L1, L2) { var L3 = new Node(null, null); var prev = L3; while (L1 !==

我已经在线获得了merge函数,但是我并不真正理解while循环中的条件。因此,对于(L1!==null&&L2!==null),我不确定什么是L1!==空值实际检查。是检查linkedList L1的第一个节点是否有值,还是检查linkedList L1是否为linkedList?为什么?有人能看一下吗?谢谢

function merge(L1, L2) {

  var L3 = new Node(null, null);
  var prev = L3;

  while (L1 !== null && L2 !== null) {
    if (L1.data <= L2.data) { 
      prev.next = L1;
      L1 = L1.next;
    } else {
      prev.next = L2;
      L2 = L2.next;
    }
    prev = prev.next;
  }

  if (L1 === null) { prev.next = L2; }
  if (L2 === null) { prev.next = L1; }

  return L3.next;

}
函数合并(L1、L2){
var L3=新节点(null,null);
var-prev=L3;
而(L1!==null&&L2!==null){

if(L1.data表达式
L1!==null
确定L1是否为null。while循环一直运行,直到L1或L2为null,这意味着其中一个已完全合并。循环之后,非null链接列表的其余部分也立即合并