2018年4月12日 下午3:54
Jump Game - LeetCode
错误❎
- 没有带实际的数去写具体的过程,只是画了个数组,连这个数组中的数理解都是错误的,能写对个屁!
- 这里的错是因为自己不踏实。人的脑子有限的,不一步步的具体写你很容易前后步骤混了
- 还有一招,就是问自己:这个数据代表着啥,能干啥等各种问题,通过问题让自己有思考的时间
- 看上去一个复杂的题,最后就变成了一个遍历数组的题。
- 只有认识这种我们大一都会的程度,才说明我们理解的很透彻,程序才好写
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26class Solution {
public:
bool canJump(std::vector<int>& nums) {
std::vector<int> index;
//求出每个点最远到达的位置保存在index[]中
for(int i = 0; i < nums.size(); i++){
// index[i] = nums[i]+i;
index.push_back(nums[i]+i);
}
int max_index=index[0];
//max_index记录最大点,同时用作判断的核心
for(int i = 1; i < index.size(); i++){
if(max_index > index[i]){
return false;
}
if(max_index < index[i]){
max_index = index[i];
}
if(i == index.size()-1) return true;
}
return false;//随便写,只为不报错
}
};
- 只有认识这种我们大一都会的程度,才说明我们理解的很透彻,程序才好写