有效地选择具有分配给它的最小/最大值的变量

时间:2015-12-11 21:41:58

标签: algorithm

因此,如果每个变量都赋值(我的意思是值是变量的属性)。如何最有效地挑选出具有最大值或最小值的变量?

你能用Python举个例子吗? 所以这将是我在Python中的方法:

domains = []
for var in variables :
    domains.append(var.value)
min=  min(domains)
for var in variables :
    if var.value == min :
        return var 

2 个答案:

答案 0 :(得分:0)

一般草图将是这样的(改进将提供一种提取所需值的方法,一旦有了列表,就可以使用索引轻松检索实际元素):

def MinAndIndex(l):
  minval = l[0]
  min_ix = 0
  cnt = 0
  for e in l:
    if e < minval:
      minval = e
      min_ix = cnt
    cnt += 1

  return minval, min_ix

答案 1 :(得分:0)

domains.index(min(domains))

你可能会说这不是有效的,但是渐渐地,当你的列表没有排序时你不能做得更好。