当前位置: 首页> 教育> 高考 > 人气最高的网络游戏排行榜_商城小程序报价_西安seo网站关键词优化_东莞商城网站建设

人气最高的网络游戏排行榜_商城小程序报价_西安seo网站关键词优化_东莞商城网站建设

时间:2025/7/11 9:35:56来源:https://blog.csdn.net/zqystca/article/details/144634486 浏览次数:0次
人气最高的网络游戏排行榜_商城小程序报价_西安seo网站关键词优化_东莞商城网站建设

题目:

P1305 新二叉树 - 洛谷 | 计算机科学教育新生态

题目描述

输入一串二叉树,输出其前序遍历。

输入格式

第一行为二叉树的节点数 n。(1≤n≤26)

后面 n 行,每一个字母为节点,后两个字母分别为其左右儿子。特别地,数据保证第一行读入的节点必为根节点。

空节点用 * 表示

输出格式

二叉树的前序遍历。

输入输出样例

输入 #1

6
abc
bdi
cj*
d**
i**
j**

输出 #1

abdicj

思路:

1.可以用一维数组+结构体的方法构建一个二叉树,由于题目所说(特别地,数据保证第一行读入的节点必为根节点。)并且我们前序遍历的时候需要知道根节点的下标,所以我们可以提取第一行输入,记录其根节点的下标,之后就是正常的n-1行的输入。

代码如下:

#include<iostream>
#include<string>
using namespace std;
struct Node{char left;char right;
};
Node tree[5000];
int n;
string s;
void dfs(char pos)
{cout << pos;if(tree[pos].left != '*')dfs(tree[pos].left);if(tree[pos].right != '*')dfs(tree[pos].right);}
int main(void)
{cin >> n;cin >> s;char root,l,r;root = s[0] ;l = s[1];r = s[2];tree[root].left = l;tree[root].right = r;for(int i = 1 ; i <= n - 1 ; i++){cin >> s;tree[s[0]].left = s[1];tree[s[0]].right = s[2];}dfs(root);} 

关键字:人气最高的网络游戏排行榜_商城小程序报价_西安seo网站关键词优化_东莞商城网站建设

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: