为什么C++中的运行时错误深度优先搜索?

为什么C++中的运行时错误深度优先搜索?,c++,c++11,C++,C++11,为什么此函数会出现运行时错误 有什么问题吗 void dfs(int node){ visited[node]=true; for(int i=1;i<=arr[node].size();i++){ int child=arr[node][i]; if(!visited[child]){ dfs(child); } } } 你不显示所有需要的代码,但我只是想猜到你忘记了数组和容器是基于0 +索引的C++ 1到0,你得到了什么错误?1你尝试过用调试器来

为什么此函数会出现运行时错误 有什么问题吗

void dfs(int node){
  visited[node]=true;
  for(int i=1;i<=arr[node].size();i++){
   int child=arr[node][i];
   if(!visited[child]){
    dfs(child);
   }
  }
}

你不显示所有需要的代码,但我只是想猜到你忘记了数组和容器是基于0 +索引的C++ 1到0,你得到了什么错误?1你尝试过用调试器来完成你的代码吗?2.请提供。程序在i=1时突然停止;i@Yazan . 它应该包含重现问题所需的所有相关代码,以及交付给您的准确、完整的错误消息。

for(int i = 0;i < arr[node].size();i++){