刷题过程中的错误:总结记录

Posted by Mars . Modified at

记录刷题过程中的常犯错误。

1. for、while循环

  • while循环中,循环终止条件一般应该是一个绝对值,而不是在循环体内修改的变量组成的相对值。
// 下面这个循环是死循环,因为cur+k在不断地增加。
while (cur < cur+k){
    //...codes
    cur++
}
  • if条件尽量不要连写,如果连续写多个if表达式,需要仔细查看里面是否存在耦合关系
// 如果cur.val < A,第一次操作后cur变成cur.left
// 如果刚好cur.left.val > A,那么cur之后又变成了cur.left.right,也就是两个if之间存在了联动耦合关系(一般不希望这样)。
if(cur.val < A) cur = cur.left
if(cur.val > A) cur = cur.right

2. Set的add()方法一次只能添加一个元素

let a = new Set();
a.add(1,2,3,4,5,6);
// 只有1被添加到set中,其余被忽略。

3. 细节

  • 不要在规定函数外面写变量,有可能在判题器那里不能正确识别;
Keywords: Algorithm
previousPost nextPost
已经有 1000000 个小伙伴看完了这篇推文。