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

सूचकांक खोजने के लिए कार्यक्रम, जहां हम सूची को पायथन में क्रमबद्ध रखने के लिए तत्व सम्मिलित कर सकते हैं

मान लीजिए हमारे पास संख्याओं की एक सूची है जिसे अंक कहा जाता है, उन्हें आरोही क्रम में क्रमबद्ध किया जाता है, हमारे पास एक और संख्या लक्ष्य भी होता है, हमें वह सूचकांक खोजना होता है जहां अंकों को क्रमबद्ध रखने के लिए लक्ष्य डाला जाना चाहिए। यदि लक्ष्य पहले से ही अंकों में मौजूद है, तो सबसे बड़ा सूचकांक लौटाएं जहां लक्ष्य डाला जा सकता है। हमें इसे पुस्तकालय कार्यों का उपयोग किए बिना हल करना होगा और इसे ओ (लॉग एन) समय में हल करना होगा।

इसलिए, यदि इनपुट संख्या =[1,5,6,6,8,9] लक्ष्य =6 की तरह है, तो आउटपुट 4 होगा, क्योंकि 6 पहले से ही है, इसलिए इसे सम्मिलित करने के लिए, सबसे बड़ा संभावित सूचकांक 4 है , तो ऐरे [1,5,6,6,6,8,9] जैसा होगा।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • बाएं:=0
  • दाएं:=
  • अंकों का आकार - 1
  • उत्तर:=0
  • बाएं <=दाएं, करें
    • मध्य :=तल (बाएं + दाएं) / 2
    • यदि लक्ष्य>=अंक [मध्य], तो
      • उत्तर:=मध्य + 1
      • बाएं:=मध्य + 1
    • अन्यथा,
      • दाएं:=मध्य -1
  • वापसी उत्तर

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

def solve(nums, target):
   left, right = 0, len(nums) - 1
   ans = 0
   while left <= right:
      mid = (left + right) // 2
      if target >= nums[mid]:
         ans = mid + 1
         left = mid + 1
      else:
         right = mid - 1
   return ans

nums = [1,5,6,6,8,9]
target = 6
print(solve(nums, target))

इनपुट

[1,5,6,6,8,9], 6

आउटपुट

4

  1. पायथन प्रोग्राम एक तत्व को क्रमबद्ध सूची में सम्मिलित करने के लिए

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सूची दी गई है, हमें क्रमबद्ध क्रम को बदले बिना सूची में एक तत्व डालने की आवश्यकता है नीचे चर्चा के अनुसार दो दृष्टिकोण हैं- दृष्टिकोण 1:पाशविक बल विधि उदाहरण def insert(list_, n):    # search  

  1. किसी आइटम की अनुक्रमणिका को पायथन में युक्त सूची में कैसे खोजें?

    सूची में किसी तत्व की स्थिति (उस मामले के लिए कोई अनुक्रम डेटा प्रकार) अनुक्रमणिका () विधि द्वारा प्राप्त की जाती है। यह विधि दिए गए तत्व की घटना का पहला उदाहरण ढूंढती है। >>> L1=[45, 32, 100, 10, 24, 56] >>> L1.index(24) 4

  1. पायथन में किसी सूची में किसी तत्व की अनुक्रमणिका कैसे खोजें?

    सूची के लिए उपलब्ध अनुक्रमणिका() विधि (साथ ही अन्य अनुक्रम प्रकार जैसे कि स्ट्रिंग और टपल) इसमें किसी विशेष तत्व की पहली घटना को खोजने के लिए उपयोगी है। >>> L1=['a', 'b', 'c', 'a', 'x'] >>> L1 ['a', 'b', 'c', 'a