请问老师关于链表
来源:9-1 排序链表-原理讲解

hy_wang
2019-04-08
老师我实在是想不通,假如说链表 (这里我用数组表示) [5,6,2,4,8,1]
let partion = (begin, end) => { //寻找基准元素的节点 let val = begin.val debugger; let p = begin let q = begin.next while (q != end) { //我个人觉得临界条件应该是 !q.next //q等于截止的元素 终止 if (q.val < val) { swap(p.next, q) p = p.next } q = q.next } swap(begin, p) }
老师你这个寻找中间的函数,while循环的条件是q != end,当q===end的时候,那么你的最后一个元素是不是就没有判断?
我的例子 来说 如果按照老师的while循环 q到了end也即是到了1,是不是就不会进入while循环。但是1明明小于5应该去5的左边
写回答
2回答
-
MLYBTTT18
2019-05-10
end不是1是undefined
00 -
快乐动起来呀
2019-04-08
是的,是没有判断最后一个元素,但是在前一个元素那就比较了啊,就是到8的时候会和8与8的next即1比较啊
012019-04-08
相似问题