leetcode刷题——一些算法技巧总结2.0

Posted zlting

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode刷题——一些算法技巧总结2.0相关的知识,希望对你有一定的参考价值。

  1. 异或、与的一点总结(这些位运算真的是骚操作2333)

    • 两个相同的数字:a^a=0

    • 取出一个数最右端为1的那一位:a &=-a

      其中-a是在计算机中就是a的补码表示(这样所有的加法运算可以使用同一种电路完成),因为补码等于原码的反码+1,所以a&-a就是a最右边一位为1,其他位为0的数

      另外:~a = -a-1

      ? 已知负数的补码,求其原码:左右找1,此两1不变,中间取反。

    • x&x-1 ==0 判断 是否是2的n次方

    • x&1 最低位二进制数,可以用来判断奇偶

    • 一个数字除以2 x>>1效率更高

以上是关于leetcode刷题——一些算法技巧总结2.0的主要内容,如果未能解决你的问题,请参考以下文章

Leetcode 动态规划刷题总结

LeetCode面试刷题技巧-二分查找算法代码思路解析

LeetCode面试刷题技巧-二分查找算法(下):通过 LeetCode 学习二分查找算法-销售价值减少的颜色球

算法比赛+刷题小技巧总结

leetcode之贪心算法刷题总结1

LeetCode面试刷题技巧- 贪心算法题习题集