![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
math
puspos
这个作者很懒,什么都没留下…
展开
-
190. 颠倒二进制位
问题 颠倒给定的 32 位无符号整数的二进制位。 例子 思路 不考虑的方法 把数字->二进制字符串,处理后,->数字,不可取,因为Integer.valueOf(s,2);不能识别负数,必须要s的第一位是’-'才能识别负数 方法1 把二进制的每一位取出来【(n>>i)&1 i=0~31,因为最开始i=0,为最后一位,最高位右移动31位变成最后一位】放在...原创 2020-03-18 20:52:11 · 180 阅读 · 0 评论 -
171. Excel表列序号
问题 给定一个Excel表格中的列名称,返回其相应的列序号。 例子 思路 26进制转10进制 AA=1*26+1=27 方法1 方法2 代码 //方法1 class Solution { public int titleToNumber(String s) { int res=0; for(int i=0; i<s.length();...原创 2020-03-18 15:56:10 · 88 阅读 · 0 评论 -
326. 3的幂
问题 给定一个整数,写一个函数来判断它是否是 3 的幂次方。 例子 思路 方法1 方法2 找到最大3次幂的数,看是否该数%n==0 代码 //方法1 class Solution { public boolean isPowerOfThree(int n) { if(n<=0) return false; //3的幂,除了1,其他...原创 2020-03-18 15:39:30 · 91 阅读 · 0 评论 -
202. 快乐数
问题 编写一个算法来判断一个数是不是“快乐数”。 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。 例子 思路 方法1 不断得到每位上数字的平方和,如果为1,返回true,否则如果已经出现则返回false 方法2 代码 //方法1 c...原创 2020-03-18 12:44:14 · 67 阅读 · 0 评论 -
119. Pascal's Triangle II [杨辉三角形2]
描述 Given a non-negative index k where k ≤ 33, return the kth index row of the Pascal’s triangle. Note that the row index starts from 0. 给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k+1 行 例子 思路 方法1 递归:不使用其他临时变量...原创 2019-10-22 18:32:30 · 123 阅读 · 0 评论 -
172. 阶乘后的零_十进制_八进制
问题 给定一个整数 n,返回 n! 结果尾数中零的数量。 例子 思路 十进制 末尾有多少个 0 ,只需要给当前数乘以一个 10 就可以加一个 0 10是由2和5产生的,由于5更少,所以只需考虑5的个数即可 设n=100,先看n中有多少个5的倍数,n/5,再看有多少25的倍数 n/25 【每隔25出现了2个5,所以每隔25还要多算一个】 八进制 把10换成8,把25->2...原创 2020-03-15 22:49:02 · 292 阅读 · 0 评论 -
面试题65. 不用加减乘除做加法
问题 写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。 例子 思路 方法1 a,b 将+变成:进位的值 (a&b)<<1【左移一位,来表示进位】, 无进位相加的值 a^b,一直把两者相加,直到进位的值为0 13+9 十进制 第一次: 无进位相加:13+9=12 进位的值:10 第二次: 无进位相加:10+12=22 进位...原创 2020-03-12 18:03:33 · 119 阅读 · 0 评论