Python 用O(n)运行时计算列表中相邻的较小数字?
我被要求编写一个在一个列表上运行的函数,它的每个索引都会计算小于当前值的值的数量。例如,在索引5中,值“75”大于60,70,60 输入:Python 用O(n)运行时计算列表中相邻的较小数字?,python,recursion,stack,runtime,combinatorics,Python,Recursion,Stack,Runtime,Combinatorics,我被要求编写一个在一个列表上运行的函数,它的每个索引都会计算小于当前值的值的数量。例如,在索引5中,值“75”大于60,70,60 输入: (100,80,60,70,60,75,85) 系统的输出: (0,0,0,1,0,3,5) 我被要求在O(n) 并使用类堆栈。我也很无知 我猜这和递归有关 在python中,任何其他语言的解决方案都会非常有用,它可以使用具有pop和push方法(在堆栈中使用)的列表来完成。代码是这样的: a = [100,80,60,70,60,75,85] out
(100,80,60,70,60,75,85)
系统的输出:
(0,0,0,1,0,3,5)
我被要求在O(n)
并使用类堆栈。我也很无知
我猜这和递归有关
在python中,任何其他语言的解决方案都会非常有用,它可以使用具有pop和push方法(在堆栈中使用)的列表来完成。代码是这样的:
a = [100,80,60,70,60,75,85]
out = []
for i in a:
out.append(len([i for j in a if i>j] ))
print out
你的问题和例子不太清楚。如果最后有一个“75”,会输出什么?对于第一个列表中的每个值。我需要计算在它之前的值的数量,这些值比他小,但彼此相等。75分为60,70,60分