若使用下列代码从节点 start 开始访问一棵树,则第一次到达某个节点时所经过的边数,一定是从
start 到该节点的最少边数。
vector<int> tree[100];bool visited[100];int dist[100]; void search(int start) { queue<int> q; q.push(start); visited[start] = true; dist[start] = 0; while (!q.empty()) { int u = q.front(); q.pop(); for (int v : tree[u]) { if (!visited[v]) { visited[v] = true; dist[v] = dist[u] + 1; q.push(v); } } }}