数据结构实验之查找三:树的种类统计(二叉排序树)
来源:互联网 发布:域名如何icp备案 编辑:程序博客网 时间:2024/06/10 20:24
数据结构实验之查找三:树的种类统计
Time Limit: 400MS Memory Limit: 65536KB
Submit Statistic Discuss
Problem Description
随着卫星成像技术的应用,自然资源研究机构可以识别每一个棵树的种类。请编写程序帮助研究人员统计每种树的数量,计算每种树占总数的百分比。
Input
输入一组测试数据。数据的第1行给出一个正整数N (n <= 100000),N表示树的数量;随后N行,每行给出卫星观测到的一棵树的种类名称,树的名称是一个不超过20个字符的字符串,字符串由英文字母和空格组成,不区分大小写。
Output
按字典序输出各种树的种类名称和它占的百分比,中间以空格间隔,小数点后保留两位小数。
Example Input
2
This is an Appletree
this is an appletree
Example Output
this is an appletree 100.00%
Hint
Author
xam
很好理解,不过要注意大小写字母~
#include <stdio.h>#include <string.h>#include <stdlib.h>struct node{ char name[30]; int data; struct node *left, *right;};int t;struct node * Insert(struct node *root, char name[]){ if(!root) { struct node * p = (struct node *)malloc(sizeof(struct node)); strcpy(p->name, name); p->data = 1; p->left = p->right = NULL; root = p; } else { if(strcmp(name, root->name)<0) root->left = Insert(root->left, name); else if(strcmp(name, root->name)>0) root->right = Insert(root->right, name); else root->data++; } return root;}void Show(struct node * root){ if(root) { Show(root->left); printf("%s %.2lf", root->name, root->data*100.0/t); printf("%c\n", '%'); Show(root->right); }}int main(){ struct node * root = (struct node *)malloc(sizeof(struct node)); root = NULL; char m[30]; scanf("%d", &t); getchar(); for(int i=1;i<=t;i++) { gets(m); for(int j=0;m[j];j++) { if(m[j]>='A'&&m[j]<='Z') m[j]+= 32; } root = Insert(root, m); } Show(root); return 0;}
阅读全文
0 0
- 数据结构实验之查找三:树的种类统计(二叉排序树)
- 数据结构实验之查找三:树的种类统计(二叉排序树)
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计 (STL)
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- SDUT3375数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- SDUTACM 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- 数据结构实验之查找三:树的种类统计
- sleep() 和 wait() 有什么区别?
- 安卓动画学习笔记
- CI中的默认访问的控制器
- javascript学习笔记之DOM
- 结构体和联合体 的区别
- 数据结构实验之查找三:树的种类统计(二叉排序树)
- 今天看到的一个有趣面试题:return *this和return this有什么区别?
- 各种排序算法的时间复杂度
- 组合博弈 -- 三大基本博弈
- 单点登录SSO
- Codeforces Round #385 (Div. 2) C
- 渗透攻防web篇-sql注入攻击中级
- day07
- 20170805