今日诗词
桃花潭水深千尺,不及汪伦送我情。
——李白《赠汪伦》
目录
1.题目一
2.思路分析
3.代码实现
4.题目二
5.思路分析
6.代码实现
9. 回文数
给你一个整数
x
,如果x
是一个回文整数,返回true
;否则,返回false
。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
- 例如,
121
是回文,而123
不是。
1.如果是负数,一定不是回文数
2.如果是整数,计算出其倒数,看是否与原数相等
3.如果是返回true,否则返回false
public Boolean getHuiWen(int x) {
if (x < 0) {
return false;
}
int temp = 0;
int num = x;
while (num != 0) {
temp = temp * 10 + num % 10;
num /= 10;
}
return temp == x;
}
70. 爬楼梯
假设你正在爬楼梯。需要
n
阶你才能到达楼顶。每次你可以爬
1
或2
个台阶。你有多少种不同的方法可以爬到楼顶呢
本问题其实常规解法可以分成多个子问题,爬第n阶楼梯的方法数量,等于 2 部分之和
爬上 n−1n-1n−1 阶楼梯的方法数量。因为再爬1阶就能到第n阶
爬上 n−2n-2n−2 阶楼梯的方法数量,因为再爬2阶就能到第n阶
public int getMethod(int n) {
int[] arr = new int[n + 1];
arr[0] = 1;
arr[1] = 1;
for(int i = 2; i <= n; i++) {
arr[i] = arr[i - 1] + arr[i - 2];
}
return arr[n];
}