给定一个整数列表, 任务是在列表的大小大于或等于o N的情况下找到N个最大元素。
例子 :
Input : [4, 5, 1, 2, 9] N = 2Output :[9, 5]Input : [81, 52, 45, 10, 3, 2, 96] N = 3Output : [81, 96, 52]
推荐:请尝试以下方法{IDE}首先, 在继续解决方案之前。一个简单的解决方案遍历给定列表N次。在每次遍历中, 找到最大值, 将其添加到结果中, 然后将其从列表中删除。下面是实现:
# Python program to find N largest
# element from given list of integers# Function returns N largest elements
def Nmaxelements(list1, N):
final_list = []for i in range ( 0 , N):
max1 = 0for j in range ( len (list1)):
if list1[j] >
max1:
max1 = list1[j];
list1.remove(max1);
final_list.append(max1)print (final_list)# Driver code
list1 = [ 2 , 6 , 41 , 85 , 0 , 3 , 7 , 6 , 10 ]
N = 2# Calling the function
Nmaxelements(list1, N)
输出:
[85, 41]
时间复杂度:O(N * size)其中size是给定列表的大小。
方法2:
# Python program to find N largest
# element from given list of integersl = [ 1000 , 298 , 3579 , 100 , 200 , - 45 , 900 ]
n = 4l.sort()
print (l[ - n:])
输出如下:
[-45, 100, 200, 298, 900, 1000, 3579]Find the N largest element: 4[298, 900, 1000, 3579]
请参考数组中的k个最大(或最小)元素为这个问题提供更有效的解决方案。
注意怪胎!巩固你的基础Python编程基础课程和学习基础知识。
【Python程序从列表中查找N个最大元素】首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。
推荐阅读
- 云计算介绍和教程指南
- 亚马逊专题面试经验分析|S7
- Django中的视图如何使用(开发示例 | Python)
- Java中的锯齿数组如何使用(示例)
- u盘格式化后容量变小,本文教您u盘格式化后容量变小怎样恢复
- 制作u盘系统安装盘,本文教您如何制作u盘打开安装盘
- u盘里东西删不掉,本文教您u盘文件删不了怎样办
- 怎样用u盘装系统,本文教您怎样用u盘装xp系统
- 华硕影驰 bios设置,本文教您华硕主板bios如何设置U盘打开