Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पुनरावर्तन के साथ द्विआधारी खोज को लागू करने के लिए पायथन कार्यक्रम

जब पुनरावर्तन का उपयोग करके द्विआधारी खोज को लागू करने की आवश्यकता होती है, तो एक विधि परिभाषित की जा सकती है, जो यह जांचती है कि सूचकांक 'उच्च' सूचकांक 'निम्न' से अधिक है या नहीं। 'मध्य' चर पर मौजूद मान के आधार पर, तत्व को खोजने के लिए फ़ंक्शन को फिर से बुलाया जाता है।

एक सूची का उपयोग विषम मूल्यों को संग्रहीत करने के लिए किया जा सकता है (अर्थात किसी भी डेटा प्रकार का डेटा जैसे पूर्णांक, फ़्लोटिंग पॉइंट, स्ट्रिंग्स, और इसी तरह)।

नीचे उसी के लिए एक प्रदर्शन है -

उदाहरण

def binary_search(my_list, low, high, elem):
   if high >= low:
      mid = (high + low) // 2
      if my_list[mid] == elem:
         return mid
      elif my_list[mid] > elem:
         return binary_search(my_list, low, mid - 1, elem)
      else:
         return binary_search(my_list, mid + 1, high, elem)
   else:
      return -1
     
my_list = [ 1, 9, 11, 21, 34, 54, 67, 90 ]
elem_to_search = 1
print("The list is")
print(my_list)

my_result = binary_search(my_list,0,len(my_list)-1,elem_to_search)

if my_result != -1:
   print("Element found at index ", str(my_result))
else:
   print("Element not found!")

आउटपुट

The list is
[1, 9, 11, 21, 34, 54, 67, 90]
Element found at index 0

स्पष्टीकरण

  • 'बाइनरी_सर्च' नामक एक फ़ंक्शन परिभाषित किया गया है।
  • यह सूची, 'निम्न' चर, 'उच्च' चर और पैरामीटर के रूप में खोजे जाने वाले तत्व को लेता है।
  • फिर, चर 'मध्य' को 'उच्च' और 'निम्न' चरों का औसत निर्दिष्ट किया जाता है।
  • यदि 'मध्य' का तत्व उसी तत्व के समान है जिसे खोजने की आवश्यकता है, तो उसे वापस कर दिया जाता है।
  • अन्यथा, यदि 'मध्य' स्थिति वाला तत्व खोजे जाने वाले तत्व से बड़ा है, तो विभिन्न मापदंडों के सेट को पास करके फ़ंक्शन को फिर से कॉल किया जाता है।
  • अन्यथा यदि 'मध्य' स्थिति में तत्व खोजे जाने वाले तत्व से कम है, तो पैरामीटर के एक अलग सेट को पास करके फ़ंक्शन को फिर से कॉल किया जाता है।
  • अब सूची को परिभाषित किया गया है, और इस सूची को पैरामीटर के रूप में पास करके फ़ंक्शन को कॉल किया जाता है।
  • इस ऑपरेशन का डेटा एक वेरिएबल में स्टोर किया जाता है।
  • यह चर वह आउटपुट है जो कंसोल पर प्रदर्शित होता है।

  1. पायथन में 0 से n मानों के साथ अद्वितीय बाइनरी सर्च ट्री की संख्या गिनने का कार्यक्रम बनाया जा सकता है

    मान लीजिए कि हमारे पास एक संख्या n है, हमें उन अद्वितीय BST की संख्या ज्ञात करनी है जिन्हें हम [0, n) से संख्याओं के साथ उत्पन्न कर सकते हैं। यदि उत्तर बहुत बड़ा मॉड है तो परिणाम 10^9+7 इसलिए, यदि इनपुट n =3 जैसा है, तो आउटपुट 5 . होगा इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - संख्या :=1

  1. पायथन प्रोग्राम में रैखिक खोज

    इस लेख में, हम लीनियर सर्च और पायथन 3.x में इसके कार्यान्वयन के बारे में जानेंगे। या पहले। एल्गोरिदम दिए गए एआर के सबसे बाएं तत्व से शुरू करें [] और एक-एक करके तत्व एक्स की तुलना एआर के प्रत्येक तत्व के साथ करें [] यदि x किसी भी तत्व से मेल खाता है, तो अनुक्रमणिका मान लौटाएँ। अगर x arr[] म

  1. रैखिक खोज के लिए पायथन कार्यक्रम

    इस लेख में, हम लीनियर सर्च और पायथन 3.x में इसके कार्यान्वयन के बारे में जानेंगे। या पहले। एल्गोरिदम Start from the leftmost element of given arr[] and one by one compare element x with each element of arr[] If x matches with any of the element, return the index value. If x doesn’t match with