当前位置: 首页 > news >正文

网站反链怎么做天眼查企业查询入口

网站反链怎么做,天眼查企业查询入口,网站设计制作工作室,阿里巴巴做公司网站题目描述 给定一棵大小为 n n n,根为 1 1 1 的树,求出其按照 dfs 和 bfs 进行遍历时的顺序。 请将所有出点按照编号从小到大排序后进行遍历。 dfs 为深度优先搜索,bfs 为宽度优先搜索。 输入格式 一个整数 n n n,表示点的…

题目描述

给定一棵大小为 n n n,根为 1 1 1 的树,求出其按照 dfsbfs 进行遍历时的顺序。

请将所有出点按照编号从小到大排序后进行遍历。

dfs 为深度优先搜索,bfs 为宽度优先搜索。

输入格式

一个整数 n n n,表示点的个数。 ( 1 ≤ n ≤ 50 ) (1 \leq n \leq 50) (1n50)

接下来一行 n − 1 n-1 n1 个整数,表示点 2 ∼ n 2 \sim n 2n 的父亲 f a i fa_i fai ( 1 ≤ f a i ≤ n ) (1 \leq fa_i \leq n) (1fain)

输出格式

第一行输出 dfs 时的顺序,第二行输出 bfs 时的顺序。

样例输入1

4
1 1 2

样例输出1

1 2 4 3
1 2 3 4

样例输入2

5
1 2 2 4

样例输出2

1 2 3 4 5
1 2 3 4 5

思路

数组 fa 来存储每个节点的父节点,向量数组 edges 来存储图的边。

main 函数中,首先读取节点的数量 n,然后读取每个节点的父节点,将每个节点添加到其父节点的边列表中。接着,对每个节点的边列表进行排序,以保证遍历的顺序。

调用 dfs 函数进行深度优先搜索。在 dfs 函数中,首先将起始节点压入栈 s1,然后在栈不为空的情况下,弹出栈顶元素,打印其值,然后将其所有子节点(除去父节点)压入栈 s2。接着,将 s2 中的所有节点都压入 s1,这样就实现了深度优先的遍历顺序。

调用 bfs 函数进行广度优先搜索。在 bfs 函数中,首先将起始节点加入队列 q1,然后在队列不为空的情况下,弹出队首元素,打印其值,然后将其所有子节点(除去父节点)加入队列。这样就实现了广度优先的遍历顺序。


AC代码

#include <algorithm>
#include <iostream>
#include <queue>
#include <stack>
#include <vector>
#define AUTHOR "HEX9CF"
using namespace std;const int N = 1e3 + 7;int n;
int fa[N];
vector<int> edges[N];void dfs(int x) {stack<int> s1;stack<int> s2;s1.push(x);while (s1.size()) {int t = s1.top();s1.pop();cout << t << " ";for (auto &i : edges[t]) {if (i == fa[t]) {continue;}s2.push(i);}while (s2.size()) {s1.push(s2.top());s2.pop();}}
}void bfs(int x) {queue<int> q1;q1.push(x);while (q1.size()) {int f = q1.front();q1.pop();cout << f << " ";for (auto &i : edges[f]) {if (i == fa[f]) {continue;}q1.push(i);}}
}int main() {ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin >> n;for (int i = 2; i <= n; i++) {cin >> fa[i];edges[fa[i]].push_back(i);}for (int i = 1; i <= n; i++) {sort(edges[i].begin(), edges[i].end());}dfs(1);cout << endl;bfs(1);cout << endl;return 0;
}
http://www.zhongyajixie.com/news/62315.html

相关文章:

  • 新建wordpress模板一键seo提交收录
  • 官网网站建设研究免费做网站软件
  • 下载用的网站怎么做搜云seo
  • wap网站源代码企业网站制作要求
  • 网站搭建系统手机app安装下载
  • 传媒建站推荐西安seo网络推广
  • 学java做网站腾讯企业qq
  • 做网站和做推广的区别app地推接单平台有哪些
  • 广州电子软件开发株洲seo优化哪家好
  • b2b网站作用产品运营主要做什么
  • 低价网站建设推广优化百度搜索关键词排名查询
  • 网站模板打包免费b站推广网站链接
  • 自己怎么做网站游戏模板建网站价格
  • 揭阳企业自助建站系统十大seo免费软件
  • app 微商城网站建设全面网络推广营销策划
  • 可靠的东莞网站推广2023年第三波疫情9月
  • 网站制作算是什么专业网站有哪些平台
  • 页面模板分类名无法编辑网页优化方法
  • 苏州专业网站设计搜索引擎关键词优化
  • 在线设计海报的网站网站案例
  • 学做网站的视频教学杭州网站优化企业
  • 联谊会总结网站建设对外宣传发布项目信息的平台
  • 青海免费网站建设网络运营与推广
  • 建设一个网站需要注意哪些内容网址大全浏览器主页
  • 企业咨询服务郴州seo
  • 做营销型网站需要注意哪些点深圳网络提速优化服务包
  • 北京南昌企业网站制作b站推广网站入口mmm
  • 合肥网站制作前3名的百度快速收录账号购买
  • 易云巢做营销型网站自媒体视频发布平台
  • 东莞网页制作与网站设计班级优化大师简介