关于 std::vector 的遍历方式
  • 板块学术版
  • 楼主Iniaugoty
  • 当前回复11
  • 已保存回复11
  • 发布时间2023/9/1 20:14
  • 上次更新2023/11/3 00:02:09
查看原帖
关于 std::vector 的遍历方式
768612
Iniaugoty楼主2023/9/1 20:14

比如说用 std::vector 存图

一种是这种,好像很多人用,但是我和同学都用这种写法被卡常过,不知道是 std::vector 的问题还是 .size() 的问题

for (int i = 0; i < e[u].size(); ++i) {
	int v = e[u][i];
	// balabala
}

还有一种是这种,我比较习惯用这个,倒是没被卡常过,貌似 c++14 以上才支持

for (auto v : e[u]) {
	// balabala
}
// 这写法好像相当于下面这个吧
for (auto it = e[u].begin(); it != e[u].end(); ++it) {
	int v = *it;
	// balabala
}

想请问一下这两种写法是性能有什么差异吗?

2023/9/1 20:14
加载中...