2016-02-10 2 views
0

У меня есть программа, которая использует двоичный поиск. И, в конце концов, мне нужно напечатать кол-во циклов. Как было бы лучше?Как считать циклы и печатать

import re 

def binarySearch(sumList, whattofind): 
    a=0 
    if len(sumList) == 0: 
     return False 
    else: 
     midpoint = len(sumList)/2 
     if sumList[midpoint]==whattofind: 
      a=a+1 
      print(a) 
      return True 
     else: 
      if whattofind<sumList[midpoint]: 
       a+=1 
       return binarySearch(sumList[:midpoint],whattofind) 
      else: 
       a+=1 
       return binarySearch(sumList[midpoint+1:],whattofind) 
     print(a) 
result = re.findall(r'\w\w', open("text.txt","r").read()) 
sumList=[] 
for line in result: 
    sumList.append(ord(line[0])+ord(line[1])) 
sumList.sort() 
whattofind=int(input('Enter number: ')) 
print (sumList) 
print(binarySearch(sumList, whattofind)) 

ответ

1

сделать следующее

count = 0 
def binarySearch(sumList, whattofind): 
    global count 
    count += 1 

и в последней строке кода просто распечатать значение счетчика

Смежные вопросы