①双指针算法
一般做题:先用暴力做法,然后去看是否存在某种性质(如单调性,维护这个区间的单调性即可)
AcWing 799. 最长连续不重复子序列 - AcWing
AcWing 800. 数组元素的目标和 - AcWing
AcWing 2816. 判断子序列 - AcWing
核心:其中一个指针不会回退!
②位运算
i)求n的第k位数字: n >> k & 1
ii)返回n的最后一位1:lowbit(n) = n & -n(利用i可以用for循环直接求出一个数字的二进制表示
对于ii,-n实际上就是取n的补码+1)
AcWing 801. 二进制中1的个数 - AcWing--->lowbit的应用