知识点1:
1.位运算函数,lowbit()函数:这个函数的作用是:lowbit()函数用来取一个二进制最低位的一与后边的0组成的数
例:5(101),lowbit(5)=1(1)
12(1100),lowbit(12)=4(100)
2.原理:其实我知道这个函数就够了,但是还是将原理放在这里方便以后看看:
由于数在计算机里以补码的方式储存,运用位运算可返回只有一个位上有1的数
int lowbit(int x)
{
return x & -x;
// return x &(~x+1);
}
//原码最后一位1 —> 其反码那一位是0,后面位全是1 —> 反码转化为补码—> 原码和补码最后一位1的地方相同 —> 进行与运算 —>得出lowbit
知识点2:如果该二叉树是二叉搜索树,直接对该树进行中序遍历便可以得到一个递增序列
知识点3:int min1=Integer.MAX_VALUE; 这行代码可以将初值赋值为最大的整数
知识点4:Math.abs();求某个数的绝对值
知识点5:
队列Queue是一个抽象类我们一般使用其子类就可以了:linkedList
注意linked也是符合队列的特征先进先出
队列的一些重要方法:
入队列:add()当队列满了以后再入队列会触发异常 offer()当队列满了以后会return false;
出队列:remoe()将元素删除并将该原数返回,如果队列为空会触发异常 poll()不会触发异常
返回队首元素:peek();
知识点6:有关java中基本数据类型和引用数据类型的问题:
1.基本类型:
基本数据类型只有8种,可按照如下分类
①整数类型:long、int、short、byte
②浮点类型:float、double
③字符类型:char
④布尔类型:boolean
2.引用数据类型:
引用数据类型非常多,大致包括:类、 接口类型、 数组类型、 枚举类型、 注解类型、 字符串型
例如,String类型就是引用类型,还有Double,Byte,Long,Float,Char,Boolean,Short(注意这里和基本类型相比首字母是大写)
简单来说,所有的非基本数据类型都是引用数据类型
3.基本数据类型和引用数据类型的区别:
基本变量类型:在方法中定义的非全局基本数据类型变量,调用方法时作为参数是按数值传递的
引用变量类型:引用数据类型变量,调用方法时作为参数是按引用传递的
引用传递指的是修改时会互相影响
知识点7:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:
知识点:



