1、进制转换
(1) 十进制 转 K进制
整数部分: 短除法
小数部分: 循环乘
(2) K进制 转 十进制
数码 * 位权
abc.ef(K) = aK^2 + bK^1 + cK^0 + dK^{-1} + e*K^{-2}
2、前中后缀表达式
(1) 中缀 转 后缀
1、加括号
2、从内到外依次讲操作符(运算符)放数字到 后 面
3、去括号
(2) 中缀 转 前缀
1、加括号
2、从内到外依次讲操作符(运算符)放数字到 前 面
3、去括号
(3) 后缀转中缀
1、从 左 向 右 遍历
2、遇到数字直接写下来
3、遇到运算符,将运算符放到 左边 最近的两个数字中间,并加上括号
4、去掉不影响计算优先级的括号
(4) 前缀转中缀
1、从 右 向 左 遍历
2、遇到数字直接写下来
3、遇到运算符,将运算符放到 右边 最近的两个数字中间,并加上括号
4、去掉不影响计算优先级的括号
3、原反补码
计算机实际存储方式是 补码
4、位运算(补码)
(1) 按位与 &
同为 1 则为 1, 否则为 0
(2) 按位或 |
同为 0 则为 0, 否则为 1
有 1 则为 1, 否则为 0
(3) 按位非 ~
* 所有位都取反, 包括符号位
(4) 按位异或 ^
相同为 0, 不相同为 1
(5) 按位右移 >>
所有位向右移动一位, 丢弃最低位, 最高位补 0
n >> m = n / (2^m)
(6) 按位左移 <<
所有位向左移动一位, 最低位补 0
n << m = n * (2^m)
5、排列组合
排列(有顺序)