导航:首页 > 源码编译 > 单词出现频率最高10个算法

单词出现频率最高10个算法

发布时间:2023-08-23 04:47:15

python统计字符串中单词数量

使用比较基本的方法写的参考代码:

#!/usr/bin/envpython
#-*-coding:utf-8-*-
#python2.7
importre
printu'请输入字符串:'
wz=raw_input()
s=wz.lower()
#小写单词的正则表达式
r='[a-z]+'
#找到所有单词
ws=re.findall(r,s)
#定义一个字典来存储单词和次数
dt={}
forwinws:
dt[w]=dt.setdefault(w,0)+1
#wd来存储单词集合,可能有几个,比如2个单词,都出现30次
wd=[]
#max用来存储单词出现的最多的次数
max=0
forword,timesindt.items():
iftimes>max:
wd=[]
wd.append(word)
max=times
eliftimes==max:
wd.append(word)

printu'有%s个单词,出现频率最高:'%len(wd)
forxinwd:
print"%s %s"%(x,max)

测试

请输入字符串:
!!!
有2个单词,出现频率最高:
a2
good2

㈡ 高频词问题,请教编程算法(不一定要编程实现,算法即可)

以下方法应该是最优了,关注高人的解答。。

1、先过滤不参与统计的符号,如单引号,逗号等
2、通过split分段函数将字符串以空格为界限分割,并将分割出来的每个单词保存到数组中
3、使用最优排序算法将单词进行排序
4、声明两个变量str和n,分别用于记录当前单词和出现次数
5、开始遍历,由于已经经过了排序,所以相同的单词一定是排在一起的,因此,如果下一个单词和当前相同就将计数加一,否则就和n比较,较大的保留在变量中。
6、遍历完毕,保留在变量中的,就是频率就高的单词!

阅读全文

与单词出现频率最高10个算法相关的资料

热点内容
上海浦东机场源码 浏览:885
扣扣加密了忘记密码如何打开 浏览:508
单片机中的地址 浏览:510
去抖动在单片机的作用 浏览:53
陆上赛艇app怎么报名 浏览:110
app内页面的网址怎么提取 浏览:286
安卓升级包pkg文件如何打开 浏览:77
id3算法原理 浏览:602
骑手通app怎么输入不了保单号 浏览:988
82一56的筒便算法 浏览:404
数控机床fanuc编程 浏览:607
天刀mode不是内部或外部命令 浏览:854
长城c30压缩机价格 浏览:1000
java打开图片文件 浏览:410
跟程序员聊天聊到半夜 浏览:411
自己怎么做app代码 浏览:915
win7旗舰版进不去带命令符 浏览:799
单片机温度检测电路 浏览:803
拼图软件不压缩 浏览:656
红袖添香小说源码 浏览:624