比如说用 std::vector 存图
一种是这种,好像很多人用,但是我和同学都用这种写法被卡常过,不知道是 std::vector 的问题还是 .size() 的问题
for (int i = 0; i < e[u].size(); ++i) {
int v = e[u][i];
}
还有一种是这种,我比较习惯用这个,倒是没被卡常过,貌似 c++14 以上才支持
for (auto v : e[u]) {
}
for (auto it = e[u].begin(); it != e[u].end(); ++it) {
int v = *it;
}
想请问一下这两种写法是性能有什么差异吗?