【数据结构笔记42】哈希表应用:文件中单词词频统计
本次笔记内容:
11.5 文件中单词词频统计
文章目录
- 题目
- 分析
- 程序框架
题目
如上图,对单词词频进行统计。
分析
如上图,涉及到对已有单词进行查找,因此要进行单词的管理,使用散列表。
程序框架
int main()
{int TableSize = 10000; // 散列表的估计大小int wordcount = 0, length;HashTable H;ElementType word;FILE *fp;char document[30] = "HarryPotter.txt"; // 要被统计词频的文件名H = InitializeTable(TableSize); // 建立散列表if ((fp = fopen(document, "r")) == NULL)FatalError("无法打开文件!\n");while (!feof(fp)){length = GetAWord(fp, word);if (length > 3) // 只考虑适当长度的单词{wordcount++;InsertAndCount(word, H);}}fclose(fp);printf("该文档共出现%d个有效单词", wordcount);Show(H, 10.0 / 100); // 显示词频前10%的所有单词DestroyTable(H);return 0;
}
如上图,Show函数做4件事。
【数据结构笔记42】哈希表应用:文件中单词词频统计相关推荐
- 学习数据结构笔记(8) ---[哈希表(Hash table)]
B站学习传送门–>尚硅谷Java数据结构与java算法(Java数据结构与算法) 一般在java程序访问数据库时都会安排从内存的缓存层中取数据;之前的做法是自己写个哈希表,实现对数据的缓存. 哈 ...
- txt文件英语单词词频统计
目录 一.需求分析 二.相关库列表 三.代码在此 四.一些问题 一.需求分析 把txt文件里的英语单词按照出现次数排序并生成csv文件,如果次数相同按照单词的md5值来排序 二.相关库列表 panda ...
- 数据结构与算法笔记:哈希表——力扣389
原题: 给定两个字符串 s 和 t ,它们只包含小写字母.字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母.请找出在 t 中被添加的字母. 思路: 首先咱们抛开编程知识,就当它是咱们日常 ...
- 图书馆管理系统(C、数据结构、哈希表、文件IO)
目录 技术路线 实现效果展示 程序主体 1.头文件部分 2.自定义函数定义部分 3.main函数部分 注意 技术路线 数据结构.哈希表.文件IO 通过C语言进行程序设计,有用到数据结构中的哈希表,通 ...
- 数据结构实验:哈希表
数据结构实验:哈希表 题目描述 在n个数中,找出出现次数最多那个数字,并且输出出现的次数.如果有多个结果,输出数字最小的那一个. 输入 单组数据,第一行数字n(1<=n<=100000). ...
- 简单的MapReduce项目,计算文件中单词出现的次数
简单的MapReduce项目,计算文件中单词出现的次数 计算文件中单词出现的次数,试题如下图 1.创建读取单词的文件tast,内容如下: hadoop core map reduce hiv hba ...
- python统计有几个单词_统计文件中单词的个数---Shell及python版
最近在看shell中有个题目为统计单词的个数,使用了awk功能,代码如下 #!/bin/bash if [ $# -ne ];then echo "Usage:basename $0 fil ...
- 数据结构 链式哈希表(Hash Table)的接口定义与实现分析(完整代码)
链式哈希表的接口定义 关于哈希表与链式哈希表的描述可以参阅:http://www.cnblogs.com/idreamo/p/7990860.html 链式哈希表的操作与属性有:初始化.销毁.插入元素 ...
- python hash表_python数据结构与算法——哈希表
哈希表 学习笔记 参考翻译自:<复杂性思考> 及对应的online版本:http://greenteapress.com/complexity/html/thinkcomplexity00 ...
最新文章
- LoadRunner监控Linux
- Cell封面:王二涛组在丛枝菌根共生“自我调节”研究中取得重大进展(视频+漫画解读)...
- 你在python项目中遇到的问题_魔法02 Python环境可能遇到的问题及解决方案
- html网页制作中的问题,网页制作中注意应用HTML标签的问题
- 解决UBUNTU NVIDIA驱动安装后循环登录问题:关闭UEFI Secure Boot选项
- java webmldn,MLDN李兴华JAVA WEB视频教程(30集)_源雷技术空间
- Markdown:插入图片和图注
- Android 设计素材积累(九层之台起于垒土)
- Unable to find a single main class from the following candidates 问题解决
- 设置二级域名解析到同IP不同端口
- 统一社会信用代码校验-JavaScript
- 二进制数相减计算机如何计算,二进制减法怎么算
- 在IntelliJ下如何做parameterize method的重构
- 【CGAL_多面体】3D多面体表面
- 解决ueditor编辑器图片在线管理图片无法显示
- 如何在公众号添加付费链接
- java8精简的jre,精简版jre,只有9M多哦!
- 开发用台式机还是笔记本_您应该开发台式机还是Web应用程序?
- 学习 Linux 的最佳方式
- Keras 在windows环境下安装配置教程
热门文章
- 遥感导论网课_甘肃农业大学2019年地理信息科学专业专升本招生 专业课考试大纲...
- Nginx + uWSGI + flask + socketio 部署解决方案
- su: Authentication failure 的解决方案
- Java并发(五)线程池使用番外-分析RejectedExecutionException异常
- img src SVG使用CSS更改样式
- 对预检请求的响应未通过访问控制检查
- 如何在Python中串联两个列表?
- 如何禁用Web表单字段/输入标签上的浏览器自动完成功能?
- TCP/IP:ARP与RARP详细解析
- 转 LCD的接口类型详解