算法思想:使用二叉排序树结构存储数据
typedef struct Node{
int key;
int value;
struct Node *left,*right;
}Count;
- 若等于二叉树结点值,则value+1
- 不等于则继续向下遍历,直到最底层为止
- 遍历完二叉树,若不等于,则创建新结点插入二叉树
- 使用中序遍历进行遍历
#include<stdio.h>
#include<stdlib.h>
typedef struct Node{
int key;
int value;
struct Node *left,*right;
}Count;
/*输入一组数据,统计每个数出现的次数,并按照数字的大小进行排序输出
输入:9 8 5 1 7 2 8 2 9 10 1 7 8 9 5 6 9 0 1 9
输出:
0:1
1:3
2:2
5:2
6:1
7:2
8:3
9:5
10:1
*/
void InOrder(Count *root){
if(root){
InOrder(root