算法题/数组中出现次数超过一半的数字
来源:互联网 发布:淘宝二手ps4主机能买吗 编辑:程序博客网 时间:2024/06/05 04:42
python2.7
数组中出现次数超过一半的数字
题目:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字
例子说明:
如输入一个长度为 9 的数组{ 1, 2, 3, 2, 2, 2, 5, 4, 2}。由于数字 2 在数组中出现了 5 次,超过数组长度的一半,因此输出 2 。
思路:利用set,统计不同数字出现的次数
#coding:utf-8def half_num(a): mid_num = len(a)/2 all_num = list(set(a)) for i in all_num: if a.count(i) > mid_num: return i return 'no one'print(half_num([1, 2, 3, 2, 2, 2, 5, 4, 2]))
面向对象
#coding:utf-8class Solution: def MoreThanHalfNum_Solution(self, numbers): self.mid_num = len(numbers)/2 self.all_nums = list(set(numbers)) for i in self.all_nums: if numbers.count(i) > self.mid_num: return i return Falses = Solution()print(s.MoreThanHalfNum_Solution([1,2,3,2,2,2,5,4,2]))
python常用格式转换
#coding:utf-8"""python中常用格式转换"""a = '123'#将a转为整形b = int(a)#将c转为strc = str(b)#将d转为listd = list(a)#将e转为stre = "".join(d)e1 = " ".join(d)#将f转为list,按空格分割f = e.split()
阅读全文
0 0
- 算法题:数组中出现次数超过一半的数字
- 算法题/数组中出现次数超过一半的数字
- 数组中出现次数超过一半的数字[算法]
- 数组中出现次数超过一半的数字[算法]
- 数组中出现次数超过一半的数字(算法)
- 算法题目---数组中出现次数超过一半的数字
- 【算法】数组中出现次数超过一半的数字
- [编程题]数组中出现次数超过一半的数字
- 数组中超过出现次数超过一半的数字
- 74.数组中超过出现次数超过一半的数字
- 74 数组中超过出现次数超过一半的数字
- 程序员面试题精选100题(47)-数组中出现次数超过一半的数字[算法]
- 程序员面试题精选100题(47)-数组中出现次数超过一半的数字[算法]
- 每日一道算法题:数组中出现次数超过一半的数字
- 程序员面试题精选100题(47)-数组中出现次数超过一半的数字[算法]
- 【数组4】数组中出现次数超过一半的数字
- 数组4:数组中出现次数超过一半的数字
- 微软等数据结构+算法面试100题(23)--数组中超过出现次数超过一半的数字
- cookie和session的区别
- 发现了一个好用的WEB项目打印控件--四方打印
- 阿里、百度等多家公司Java面试记录与总结
- C++调用Python模块
- Hadoop MapReduce执行过程中map和reduce执行过程
- 算法题/数组中出现次数超过一半的数字
- Java的反射
- 拨开字符编码的迷雾
- sparkStreaming总结
- web页面跳转
- Ubuntu串口通信
- partial修饰介绍
- 坐标系之间的旋转平移变换与对应变换矩阵的关系
- LRU缓存策略