题目与方法总结
层次遍历问题
机场登机口模拟
使用链式存储的结构进行层次遍历
q.push(初始结点序号);
while(q.size()){
int t = q.front();
q.pop();
for(int i = h[t];i != -1;i = ne[i]){
取出结点的序号
auto j = e[i];
if(题设条件判断)
遍历方式
q.push(j);
}
}
矩阵距离
使用矩阵存储的结构进行层次遍历
q.push(0,0);
也可以是一些可以作为遍历起点的点
int dx[] = {1,-1,0,0}, dy[] = {0,0,1,-1};
while(q.size()){
auto t = q.front();
q.pop();
for(int i = 0;i < 4;i++){
int x = t.first + dx[i],y = t.second + dy[i];
if(对于x,y坐标的限制条件,以及遍历的条件){
遍历任务
q.push(x,y);
}
}
}
树的高度
使用链表存储的结构进行层次遍历
连通图
使用链表存储结构进行层次遍历
全球变暖
使用矩阵存储结构进行层次遍历