ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

1306. 跳跃游戏 III

2026/9/14 21:02:46 拓冰建站 浏览量
1306. 跳跃游戏 III

经过测试,两种写法耗时差距10倍,我也不知道原因是啥
用访问次数的是更快的

class Solution {
public:int n;bool dfs(vector<int>& arr, int start, vector<int>& visited){if(start<0||start>=n || visited[start]==1) return false;visited[start]++;if(arr[start]==0)return true;return dfs(arr,start+arr[start],visited)||dfs(arr,start-arr[start],visited);}bool canReach(vector<int>& arr, int start) {n=arr.size();vector<int>visited(n,0);return dfs(arr, start, visited);}
};

是否访问过是更慢的

class Solution {
public:int n;bool dfs(vector<int>& arr, int start, vector<bool>& visited){if(start<0||start>=n || visited[start]) return false;visited[start]=true;if(arr[start]==0)return true;return dfs(arr,start+arr[start],visited)||dfs(arr,start-arr[start],visited);}bool canReach(vector<int>& arr, int start) {n=arr.size();vector<bool>visited(n,false);return dfs(arr, start, visited);}
};