//统计一个字符串中出现的字符及其次数
#include<stdio.h>
#include<malloc.h>
#include<string.h>#define MAXWORD 100typedef int KeyType;typedef struct tnode
{char ch;//字符int count;//出现次数struct tnode *lchild,*rchild;
}BTree;void CreaTree(BTree *&p,char c)
{//采用递归方法构造一棵二叉排序树if(p==NULL)//p为NULL,则建立一个新结点{p=(BTree *)malloc(sizeof(BTree));p->ch=c;p->count=1;p->lchild=p->rchild=NULL;}else if(c==p->ch)p->count++;else if(c<p->ch)CreaTree(p->lchild,c);elseCreaTree(p->rchild,c);
}void InOrder(BTree *p)//中序遍历BST
{if(p!=NULL){InOrder(p->lchild);//中序遍历左子树printf("字符 %c 在本串中出现的次数:%d \n",p->ch,p->count);//访问根节点InOrder(p->rchild);//中序遍历右子树}
}int main()
{BTree *root=NULL;int i=0;char str[MAXWORD];printf("\n");printf("输入字符串:");gets(str);while(str[i]!='\0'){CreaTree(root,str[i]);i++;}printf("各字符及出现次数:\n");InOrder(root);printf("\n"); return 0;
}

数据结构源码笔记(C语言描述)汇总:

数据结构源码笔记(C语言):英文单词按字典序排序的基数排序

数据结构源码笔记(C语言):直接插入排序

数据结构源码笔记(C语言):直接选择排序

数据结构源码笔记(C语言):置换-选择算法

数据结构源码笔记(C语言):Huffman树字符编码

数据结构源码笔记(C语言):Josephus问题之顺序表

数据结构源码笔记(C语言):Josephus问题之循环链接表

数据结构源码笔记(C语言):多项式合并

数据结构源码笔记(C语言):二叉树之叶子结点旋转销毁

数据结构源码笔记(C语言):哈夫曼树

数据结构源码笔记(C语言):集合的位向量表示

数据结构源码笔记(C语言):链接队列

数据结构源码笔记(C语言):链接栈

数据结构源码笔记(C语言):线性表的单链表示

数据结构源码笔记(C语言):线性表的顺序表示

数据结构源码笔记(C语言):栈的基本操作

数据结构源码笔记(C语言):中缀表达式

数据结构源码笔记(C语言):希尔插入排序

数据结构源码笔记(C语言):索引文件建立和查找

数据结构源码笔记(C语言):冒泡排序

数据结构源码笔记(C语言):快速排序

数据结构源码笔记(C语言):可变长度字符串的快速排序

数据结构源码笔记(C语言):基数排序

数据结构源码笔记(C语言):二路归并排序

数据结构源码笔记(C语言):堆排序

数据结构源码笔记(C语言):二叉树搜索树Kruskal

数据结构源码笔记(C语言):二叉搜索树Prim

数据结构源码笔记(C语言):最短路径弗洛伊德算法

数据结构源码笔记(C语言):深度、广度优先生成树

数据结构源码笔记(C语言):邻接矩阵转化邻接表

数据结构源码笔记(C语言):统计字符串中出现的字符及其次数

数据结构源码笔记(C语言):顺序查找

数据结构源码笔记(C语言):哈希表的相关运算算法

数据结构源码笔记(C语言):分块法查找

数据结构源码笔记(C语言):二分查找

数据结构源码笔记(C语言):二叉树遍历

数据结构源码笔记(C语言):二叉平衡树的相关操作算法

数据结构源码笔记(C语言):二叉排序树的基本操作算法

数据结构源码笔记(C语言):B树的相关运算算法

数据结构源码笔记(C语言):统计字符串中出现的字符及其次数相关推荐

  1. 数据结构源码笔记(C语言):可变长度字符串的快速排序

    //实现可变长度的字符串序列快速排序算法#include<stdio.h> #include<malloc.h> #include<string.h>#define ...

  2. 数据结构源码笔记(C语言描述)汇总

    数据结构源码笔记(C语言):英文单词按字典序排序的基数排序 数据结构源码笔记(C语言):直接插入排序 数据结构源码笔记(C语言):直接选择排序 数据结构源码笔记(C语言):置换-选择算法 数据结构源码 ...

  3. 数据结构源码笔记(C语言):英文单词按字典序排序的基数排序

    //实现英文单词按字典序排序的基数排序算法#include<stdio.h> #include<malloc.h> #include<string.h>#defin ...

  4. 数据结构源码笔记(C语言):索引文件建立和查找

    //实现索引文件建立和查找算法#include<stdio.h> #include<malloc.h> #include<string.h> #include< ...

  5. 数据结构源码笔记(C语言):快速排序

    //实现快速排序算法 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; type ...

  6. 数据结构源码笔记(C语言):冒泡排序

    //冒泡排序算法实现 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; type ...

  7. 数据结构源码笔记(C语言):希尔插入排序

    //实现希尔插入排序算法 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; ty ...

  8. 数据结构源码笔记(C语言):直接插入排序

    //实现直接插入排序算法#include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; typ ...

  9. 数据结构源码笔记(C语言):直接选择排序

    //实现直接选择排序算法#include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; typ ...

最新文章

  1. Java Maven学习 - 1
  2. java对象是 什么的集合_java持有对象-集合类
  3. WF4.0 基础篇 (二十八) WF调用PowerShell
  4. 关于iOS 5 Could not instantiate class named NSLayoutConstraint错误
  5. jQuery回调、递延对象总结(中篇) —— 神奇的then方法
  6. JAVA语言程序设计(基础篇)——第四章例题
  7. xml文件和DataTable之间相互转换
  8. const常类型说明
  9. deepin20.7安装mysql8.0.30教程
  10. 时空数据挖掘一(城市计算)
  11. vcard文件怎么导入手机_如何从单个vCard(.vcf)文件将多个联系人导入Outlook 2013
  12. 计算机如何增加c盘容量,怎么给c盘增加空间 c盘增加空间步骤【图文】
  13. php书和作者,【原创书评】《[死神]白鸟书 》作者:云暖(任性傲娇的贵族少年与大小白的回忆)...
  14. 我不相信长夜将至,因为火把就在自己手中。
  15. 文化苦旅 余秋雨著
  16. 2020-27th-07 蒟蒻团 【陈睿的考验】详解
  17. Bugku:杂项 猫片(安恒)
  18. 我的软设、系分考试经验(书)
  19. YII2.0 接口开发步骤
  20. 上汽大众推出2023款纯电车,ID.系列新款售价16.3万元起

热门文章

  1. c++求矩阵的秩_一篇文章搞定矩阵相关概念及意义通俗解释汇总
  2. mac python3 安装mysqlclient
  3. 【robotframework】robotframework基本使用
  4. ActiveMQ的使用
  5. 2018冬令营模拟测试赛(九)
  6. .NET开发者必备的11款免费工具
  7. ldd,locate,vimdiff
  8. [Silverlight]使用MVVM模式打造英汉词典
  9. 新来的 不知道写什么呢
  10. MySQL递归查询父节点或递归查询子节点-陈远波