1.异或运算
0^N = N ;N^N = 0; 满足交换律和结合律
2.提取某个数最右的第一位:
int rightOne = eor &(~eor+1)
3.求数组中间下标
int mid = L + ((R - L) >> 1);
4.master 公式使用
5.堆
堆是一棵完全二叉树,物理上通过数组的形式进行存储。
父子节点满足如下关系:若父节点的索引为 i,则左子节点的索引为:2 * i + 1 , 右子节点的索引为:2 * i + 2。若孩子节点的索引为 j,则父亲节点的索引为:( j - 1 ) / 2。 向下取整
6.二叉树遍历
递归序
先序遍历:在递归序中第一次遇到就打印
中序遍历:在递归中第二次遇到就打印
后序遍历:在递归中第三次遇到就打印