में बाइनरी खोज एल्गोरिदम मैं पाइथन में बाइनरी खोज को कार्यान्वित करने की कोशिश कर रहा हूं और इसे निम्नानुसार लिखा है। हालांकि, जब भी needle_element सरणी में सबसे बड़े तत्व से बड़ा होता है, तो मैं इसे रोक नहीं सकता।पाइथन
क्या आप मदद कर सकते हैं? धन्यवाद।
def binary_search(array, needle_element):
mid = (len(array))/2
if not len(array):
raise "Error"
if needle_element == array[mid]:
return mid
elif needle_element > array[mid]:
return mid + binary_search(array[mid:],needle_element)
elif needle_element < array[mid]:
return binary_search(array[:mid],needle_element)
else:
raise "Error"
मैं, सरणी का आंशिक प्रतियां की बहुत सारी बनाने से बचने की कोशिश करेंगे एक इसके बजाय निचले और ऊपरी सूचकांक में डी पास। फिर आप निचले> ऊपरी भाग पर बस रुकें। –
मई [बाइनरी-सर्च-इन-पायथन] देखना चाहते हैं (http://stackoverflow.com/questions/212358/binary-search-in-python) – nawfal