03-树2 List Leaves (25分)
来源:互联网 发布:2000w酒店数据 在线 编辑:程序博客网 时间:2024/05/17 06:53
在网上看到别人的代码,真心觉得写的很好
#include<stdio.h>#include<ctype.h>struct Node{ int root; int left; int right;};int main(){ //create the tree int n; struct Node nodes[10]; scanf("%d",&n); for(int i=0;i<n;i++){ nodes[i].root = 1; nodes[i].left = -1; nodes[i].right = -1; } for(int i=0;i<n;i++){ char ch1,ch2; scanf("\n%c %c",&ch1,&ch2); if(isdigit(ch1)){ nodes[i].left = ch1 - '0'; nodes[ch1-'0'].root = 0; } if(isdigit(ch2)){ nodes[i].right = ch2 - '0'; nodes[ch2-'0'].root = 0; } } int root; for(int i=0;i<n;i++) { if(nodes[i].root == 1){ root = i; break; } } //find the leave and print it; int leaves = 0; int queue[10]; int head=0,rear=0; queue[rear++] = root; while(rear-head){ int node = queue[head++]; if(nodes[node].left == -1 && nodes[node].right == -1){ if(leaves) printf(" "); printf("%d",node); ++leaves; } if(nodes[node].left != -1){ queue[rear++] = nodes[node].left; } if(nodes[node].right != -1){ queue[rear++] = nodes[node].right; } } return 0;}
0 0
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分)
- PAT - 03-树2 List Leaves (25分)
- 03-树2 List Leaves (25分) (查找叶子节点)
- [pta]03-树2 List Leaves (25分)
- JAVA大数操作
- HTML文档类型
- 学习,复习
- 第七次 HTML作业
- 2016.4.13Python中的filter
- 03-树2 List Leaves (25分)
- Android Studio获取SHA1值
- 【Android】工具 —— Eclipse常用功能
- Floyd最小环求最短路
- HTML简介
- [leetcode]328. Odd Even Linked List
- java编程思想第四版-嵌套类
- stream 流是什么?
- get请求和post请求提交的区别?