关闭

NYOJ 1063 生活的烦恼

标签: 数据结构二叉树ACM
254人阅读 评论(0) 收藏 举报
分类:

题目链接
坦白讲还是弄不大懂建树的过程,对于结构体搞得不大明白。。就贴个代码作为建树和按层次遍历的模板吧,,代码是粘的网上的,自己稍加改动了一些还标明了不明白的地方,
附参考代码的链接
存留的代码

#include<iostream>
#include<string.h>
#include<queue>
#include<stack>
using namespace std;
string temp;
queue<string>cas;

typedef struct BiNode{
    string data;
    struct BiNode *lchild,*rchild;//这个*是什么意思呢?
}BiTNode,*BiTree;//加不加*又有什么区别呢?加*代表整个链表,否则就代表一个节点


void createBiTree(BiTree &M){//&不能去掉
,建树要看是不是空树
    cin>>temp;
//这里为什么要加输入的语句呢?
    if(temp.length()==1 && temp[0]=='#'){
       M=NULL;
    }
    else{
        M=new BiTNode;//创建一个新的节点
        M->data=temp;//先序的顺序
        createBiTree(M->lchild);
        createBiTree(M->rchild);
    }
}
void preOrder(BiTree M,int leval,int leval_goal){
    if(M==NULL)
       return;
    if(leval==leval_goal){
        cas.push(M->data);
        return;
    }
    preOrder(M->lchild,leval+1,leval_goal);
    preOrder(M->rchild,leval+1,leval_goal);
}
int main(){
    int N;
    string str;
    int n,i,j,k,t;
    cin>>N;
    while(N--){
        BiTree L;//声明一个链表
        createBiTree(L);//创建一个连表
        cin>>str;
        cin>>n;
        preOrder(L,1,n);//对链表进行处理
        int number=cas.size();//求出队列的长度
        if(number>1){
            for(i=0;i<number-1;i++){
              cout<<cas.front()<<"~";
              cas.pop();
            }
            cout<<cas.front()<<endl;
            cas.pop();
        }
        else{
            cout<<cas.front()<<endl;
            cas.pop();
        }
    }
    return 0;
}
0
0
查看评论

生活的烦恼 nsoj

生活的烦恼 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 生活的暑假刚集训开始,他要决心学好字典树,二叉树,线段树和各种树,但生活在OJ上刷题的时候就遇到了一个特别烦恼的问题。那当然就是他最喜欢的...
  • AYZXX
  • AYZXX
  • 2017-08-16 10:31
  • 110

NYOJ1063_生活的烦恼

描述 生活的暑假刚集训开始,他要决心学好字典树,二叉树,线段树和各种树,但生活在OJ上刷题的时候就遇到了一个特别烦恼的问题。那当然就是他最喜欢的二二叉树咯!题目是这样的:给你一颗非空的二叉树,然后再给你一个整数n,让生活输出这颗二叉树的第n(n>0且n 输入第一行输入一...
  • S031302306
  • S031302306
  • 2016-07-06 10:40
  • 389

nyoj-1063 生活的烦恼

测试的是对二叉树的建立 及处理 代码#include #include #include #include using namespace std; const int max=100000; typedef struct BiNode{ string data; struct BiNode...
  • wojiaohuangyu
  • wojiaohuangyu
  • 2015-05-05 17:47
  • 751

nyoj 275 队花的烦恼1

队花的烦恼一 时间限制:3000 ms  |  内存限制:65535 KB 难度:1 描述 ACM队的队花C小+经常抱怨:“C语言中的格式输出中有十六、十、八进制输出,然而却没有二进制输出,哎,真遗憾!谁能帮我写一个程序实现输入...
  • l2533636371
  • l2533636371
  • 2016-08-02 17:29
  • 122

nyoj-275-队花的烦恼一

队花的烦恼一 时间限制:3000 ms  |  内存限制:65535 KB 难度:1 描述 ACM队的队花C小+经常抱怨:“C语言中的格式输出中有十六、十、八进制输出,然而却没有二进制输出,哎,真遗憾!谁能帮我写一个程序实现输入...
  • jtahstu
  • jtahstu
  • 2014-10-17 23:13
  • 5587

nyoj 1063 - 生活的烦恼 二叉树重建及遍历

生活的烦恼 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 生活的暑假刚集训开始,他要决心学好字典树,二叉树,线段树和各种树,但生活在OJ上刷题的时候就遇到了一个特别烦恼的问题。那当然就是他最喜欢的二二叉树咯!题目是这...
  • u011584929
  • u011584929
  • 2014-12-15 13:19
  • 808

NYOJ 1063 生活的烦恼 (二叉树递归建立)

生活的烦恼 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 生活的暑假刚集训开始,他要决心学好字典树,二叉树,线段树和各种树,但生活在OJ上刷题的时候就遇到了一个特别烦恼的问题。那当然就是他最喜欢的二二叉树咯!题目是这样的:给你一颗非空的二叉树,然后再给你一个整...
  • naipp
  • naipp
  • 2016-07-13 14:37
  • 253

NYOJ 682 初学者的烦恼

NYOJ 682 初学者的烦恼
  • u012804490
  • u012804490
  • 2014-05-15 13:36
  • 528

数据启动出现错误1063 正确处理方式

在使用cmd  命令时 使用管理员权限启动   net start mysql   启动 mysql 服务 但是启动后报  系统错误 1063; 在网上 找了好多处理方法,最后测试 ,启动服务成功; 问题根源:可能是在mysql 文件目录下: my.i...
  • Mr_QiuL
  • Mr_QiuL
  • 2017-03-06 16:22
  • 559

NYOJ - 兔子的烦恼(一)

兔子的烦恼(一) 时间限制:1000 ms  |           内存限制:65535 KB 难度:2 描述 在一座山上有n个山洞(每个洞从0~n-1分别编号),这山上有一...
  • SevenMIT
  • SevenMIT
  • 2012-12-25 22:54
  • 801
    个人资料
    • 访问:9792次
    • 积分:693
    • 等级:
    • 排名:千里之外
    • 原创:63篇
    • 转载:3篇
    • 译文:0篇
    • 评论:1条
    最新评论