online_judge_1503
2016-05-04 22:00
316 查看
#include <iostream> using namespace std; struct BiTNode { int data; BiTNode *left; BiTNode *right; }; int loc; int n; BiTNode* createTree() { cin>>loc; if(loc == 0) { return NULL; } BiTNode *T = new BiTNode(); T->data = loc; loc++; T->left = createTree(); T->right = createTree(); return T; } void delTree(BiTNode *T) { if(T==NULL) return; delTree(T->right); delete T; } void Convert(BiTNode *curT, BiTNode **T) { if(curT == NULL) return ; BiTNode *pcur = curT; if(pcur->left != NULL) Convert(pcur->left, T); pcur->left = *T; if((*T) != NULL) (*T)->right = pcur; *T = pcur; if(pcur->right!=NULL) Convert(pcur->right, T); } void printList(BiTNode *T) { while(T) { cout<<T->data<<" "; T = T->right; } cout<<endl; } void ReverseList(BiTNode **tt) { while((*tt)->left != NULL) (*tt) = (*tt)->left; } int main() { BiTNode *T = NULL; BiTNode *tt = NULL; cin>>n; while(n--) { T = NULL; tt = NULL; loc = 0; T = createTree(); Convert(T, &tt); ReverseList(&tt); printList(tt); delTree(tt); } return 0; }
是个好题目,但是在oj里很水。特别是输出太不符合OJ的强迫症了……
相关文章推荐
- Android使用AnysnTask强求数据
- CWHArray模版类
- 输入100以内的数,累加求和,如果输入不是100以内的提示用户重新输入
- sql server 2008 r2 出问题
- Java学习1_一些基础1——16.5.4
- java源码分析--Enumeration接口和Iterator接口
- Fragment加Viewpager的使用小结
- java面向对象中对属性和方法的封装
- 设计模式23篇:原型模式
- TortoiseSVN基本操作和冲突演示
- Shell:环境变量
- for穷举算凑齐2角钱
- 理解clojure语法(1)
- Java使用UDP协议编写聊天程序
- 推荐系统的评价指标总结
- 自动释放池简单原理
- MyBatis嵌套查询column传多个参数描述
- 第三百九十一、二、三、四、五、六、七天 how can I 坚持
- “南通大学教务管理系统微信公众号” 用户体验分析
- Leetcode - Isomorphic Strings