贪心算法——最大收益与最小交易次数
题目:
已知数列长度n ,数列表示股票每天的价格,每次手中仅可以持有1手(即100股)股票,求最小交易次数与最大收益 (忽略税费及手续费)
答案:
代码(python)
# 数列
list1 = [9,7,3,10,1,2,5]
# 最大收益
max_profit = 0
# 最小交易次数
n = 0
mark = 0
for i in range(1, len(list1)):
diff = list1[i] - list1[i - 1]
if diff > 0:
max_profit = max_profit + diff
if mark == 0:
n = n + 2
mark = 1
else:
mark = 0
print(max_profit, n)