相关疑难解决方法(0)

Python - 查找第二个最小的数字

我在这个网站上找到了这个代码来找到第二大数字:

def second_largest(numbers):
    m1, m2 = None, None
    for x in numbers:
        if x >= m1:
            m1, m2 = x, m1
        elif x > m2:
            m2 = x
    return m2
Run Code Online (Sandbox Code Playgroud)

来源:以线性时间获得列表中的第二大数字

是否可以修改此代码以找到第二个最小的数字?所以举个例子

print second_smallest([1, 2, 3, 4])
2
Run Code Online (Sandbox Code Playgroud)

python

8
推荐指数
3
解决办法
5万
查看次数

如何在列表中找到第二大数字?

所以我必须从列表中找到第二大数字.我是通过简单的循环来完成的.

我的方法是将列表分成两部分,然后将最大数字分成两部分,然后比较两个数字.我将从其中两个中选择较小的数字.我不能使用现成的功能或不同的方法.

基本上,这是我的代码.但它运行不正常

#!/usr/local/bin/python2.7

alist=[-45,0,3,10,90,5,-2,4,18,45,100,1,-266,706]
largest=alist[0]
h=len(alist)/2 
m=len(alist)-h

print(alist)

for i in alist:
    if alist[h]>largest:
      largest=alist[h]
      i=i+1
print(largest)
Run Code Online (Sandbox Code Playgroud)

python list max

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

python ×2

list ×1

max ×1