題目描述:對於乙個具有 n 個元素的陣列,用乙個天平,通過比較 2個元素的重量,求出第二重的乙個。
**如下:
import numpy as np
def secondmax(a):
max = a[0] # 假設第乙個元素為最大值
secondmax = -1
for i in a: # 遍歷每乙個元素
if max < i: # 如果當前值大於最大值,將最大值賦給第二大值,當前值賦給最大值
secondmax = max
max = i
elif max > i and secondmax < i: # 如果當前值小於最大值且大於第二大值,則賦給第二大值
secondmax = i
return max, secondmax
a = np.random.randint(low=0, high=10, size=10)
print(a)
print(secondmax(a)) # 列印最大值和第二大值
其時間複雜度為o(n) 找出陣列中第二大的數
給你乙個陣列,求出其中第二大的數 比如陣列a 1,2,3,4,5,6,7,8,9 其中第二大的數為8,返回8即可 分析 一般情況下都是求最大值,呵呵,這道題很有趣。想想也不難,可以在掃瞄最大值的同時,求出第二大的值,就是比當前最大值大的數賦給最大值,然後用第二大的值與先前的最大值比較,如果小,則用先...
找出陣列中第二大的數
include include includeusing namespace std 初始化最大值為a 0 次大值為a 1 遍歷一次,每次比較並更新最大值和次大值,最後就可以得到次大值。這種方法時間複雜度為o n bool invalidinput false int findsecondmax i...
找出陣列中第二大的數
題目 寫乙個函式找出乙個整數陣列中,第二大的數。cpp view plain copy print?include 初始化最大值為a 0 次大值為a 1 遍歷一次,每次比較並更新最大值和次大值,最後就可以得到次大值。intfindsecondmaxvalue int a,intsize else i...