导航:首页 > 源码编译 > 单词出现频率最高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个算法相关的资料

热点内容
自动关机dos命令 浏览:323
我的app为什么打不开 浏览:155
华为手机更新app放在哪里 浏览:779
阿里云服务器包含数据吗 浏览:298
服务器的密封是什么 浏览:148
php面向对象继承 浏览:72
smtplibpython安装 浏览:475
python模拟登录网页 浏览:816
在哪查看自己的python位置 浏览:34
南京java公司 浏览:585
合唱app哪个好用 浏览:470
英文版服务器日志怎么看 浏览:69
笑脸买小人卖主图指标公式源码 浏览:948
javasocket时间设置 浏览:692
使役形命令形 浏览:233
尚硅谷程序员哪个好 浏览:254
政治论pdf 浏览:565
mvc在android中的应用 浏览:450
剧场解压视频搞笑 浏览:139
压缩式制冷机原理图 浏览:868