🎵今日诗词🎵
桃花潭水深千尺,不及汪伦送我情。
——李白《赠汪伦》
目录
给你一个整数?
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;
}
假设你正在爬楼梯。需要?
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];
}