内容正文:
2.4.3算法与程序实现的综合应用
人教中图版(2019) 数据与计算
2.4 《常见算法的程序实现》
《中共中央关于制定国民经济和社会发展第十四个五年规划和二〇三五年远景目标的建议》
十九大报告
人教中图版(2019) 数据与计算
2.4 《常见算法的程序实现》
“词云”就是对网络文本中出现频率较高的“关键词”予以视觉上的突出,形成“关键词云层”或“关键词渲染”,从而过滤掉大量的文本信息,使浏览网页者只要一眼扫过文本就可以领略文本的主旨。
人教中图版(2019) 数据与计算
2.4 《常见算法的程序实现》
项目描述:
学校开展经典诵读活动,小明在阅读《三国演义》时,为了分析小说的写作特色,想把小说中出现次数最多的20个词查找出来。想一想,小明是否能从纸质小说中找出这20个高频词?如果用计算机解决该问题,又应如何实现?
分析问题
设计算法
保存文件,调试运行
编程实现与调试
人教中图版(2019) 数据与计算
2.4 《常见算法的程序实现》
1.分析问题
小明在阅读《三国演义》时,为了分析小说的写作特色,想把小说中出现次数最多的20个词查找出来。使用手工方式逐一查找统计,费时费力而且任务难度大,此时,我们可以将其转化为可计算问题,通过编程实现问题的高效求解。
已知条件:文本文件《三国演义);
求解目标:《三国演义》中的高频词(以出现次数最多的20个词为例);
已知与未知的关系:统计《三国演义》文本中词频, 找出出现次数最 多的20个词。
人教中图版(2019) 数据与计算
2.4 《常见算法的程序实现》
2.设计算法
在问题求解中,除了要完成读取文件和显示输出内容,还要重点实现分词、词频统计和排序等功能。如图所示:
人教中图版(2019) 数据与计算
2.4 《常见算法的程序实现》
查找文章中高频词
读取文件
中文分词
词频统计
排序词频
显示输出
由于中文文本是由连续的字序列构成,没有明显的词语界限,因此分词处理的算法比较复杂。有同学知道分词的算法吗?
jieba 是目前最好的 Python 中文分词组件,它主要有以下特性:支持3种分词模式,支持繁体分词,支持自定义词典。
通过jieba的分词功能,我们可以将《三国演义》中的汉字字符序