时间:2021-05-22
本文实例讲述了python求众数问题的方法,是一个比较典型的应用。分享给大家供大家参考。具体如下:
问题描述:
多重集中重数最大的元素称为众数...就是一个可以有重复元素的集合,在这个集合中重复的次数最多的那个数就叫它的众数...
如S = [1,2,2,2,3,5] 重数是2,其重数为3
实例代码如下:
list_num = []list_num_count = 0dict_num ={}#从文件读入,文件第一行为集合中元素的个数,以后每一行为一个元素list_num_count = int(open('input.txt','r').readline())for line_num, line in enumerate(open("input.txt",'r')): if line_num > 0: list_num += line.split()#将读到的元素加入的字典中for item in list_num: if dict_num.has_key(item): dict_num[item] += 1 else: dict_num.setdefault(item,1) pass#找到出现次数最多的那个数,找到重数dict_sort_by_top = {}top_value = 0for valus in dict_num.itervalues(): if valus> top_value: top_value = valus pass#根据重数找到众数...这是因为考虑到可能有多个元素有相同多的重数the_pop_num = 0the_pop_num_count = 0for keys,values in dict_num.iteritems(): if values == top_value: print 'the pop num is %s,and the appear num is %s' % (keys,values) the_pop_num = keys the_pop_num_count = values#输出到文件,第一行为从数,第二行为重数write_line = '%s\n%s' %(the_pop_num, the_pop_num_count)open("output.txt",'w').write(write_line)这里假设有同级目录文件input.txt内容如下:
第一行的8代表元素个数,其后每一行有一个元素。
测试环境为Python2.7.6,
Python程序针对input.txt文件操作的运行结果如下:
the pop num is 37,and the appear num is 3同时生成output.txt文件记录了众数37及其重复次数3。
希望本文所述对大家的Python程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#实现求一组数据众数的方法。分享给大家供大家参考。具体如下:1.算法描述1)输入合法性检验(输入不能为空)2)制作数组副本,后面的操作将不修改数
本文实例为大家分享了python实现梯度下降法的具体代码,供大家参考,具体内容如下使用工具:Python(x,y)2.6.6运行环境:Windows10问题:求
本文实例讲述了python求crc32值的方法。分享给大家供大家参考。具体实现方法如下:要想求CRC值,前面要importbinasciibinascii.cr
本文实例讲述了Python实现求最大公约数及判断素数的方法。分享给大家供大家参考。具体实现方法如下:#!/usr/bin/envpythondefshowMax
Python中Math库和Python库都具备求对数的函数。importnumpyasnpimportmath1.Numpy库1.1求以e、2、10为底的对数函