"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > एल्गोरिदम खोजें

एल्गोरिदम खोजें

2024-07-31 को प्रकाशित
ब्राउज़ करें:905

Search Algorithms

PHP में बाइनरी सर्च को समझना

क्रमबद्ध सरणी में किसी तत्व को खोजने के लिए बाइनरी खोज एक अधिक कुशल एल्गोरिदम है। यह खोज अंतराल को बार-बार आधे में विभाजित करके काम करता है। यहां आपके बाइनरी सर्च फ़ंक्शन का विस्तृत विवरण दिया गया है:

function binarySearch(array $arr, float|int $x)
{
    $low = 0;
    $high = count($arr)-1;
    // $midIndex = (int) ($low   ($high - $low)/2);
    $i = 0;
    while($low  $arr[$midIndex]){
            $low = $midIndex  1;
            echo $low."\n";
        }else{
            $high = $midIndex - 1;
        }
    }

return "The number {$x} was not found in the array";


}

echo binarySearch([1,2,3,4,5,6,7,8,9,10,44,45,46,47,48,49,50], 45)

फ़ंक्शन बाइनरीसर्च दो पैरामीटर स्वीकार करता है:

  1. $arr: पूर्णांकों की एक क्रमबद्ध सरणी।
  2. $x: खोजी जाने वाली संख्या, जो एक फ़्लोट या पूर्णांक हो सकती है।
  3. $low को सरणी के पहले सूचकांक में आरंभ किया गया है।
  4. $high को सरणी के अंतिम सूचकांक में प्रारंभ किया गया है।
  5. $i पुनरावृत्तियों की संख्या पर नज़र रखने के लिए एक काउंटर है।
  6. व्हाइल लूप तब तक चलता है जब तक खोज अंतराल वैध है ($low $high से कम या उसके बराबर है)।
  7. $midIndex की गणना वर्तमान अंतराल के मध्य सूचकांक के रूप में की जाती है।
  8. यदि मध्य तत्व $x के बराबर है, तो फ़ंक्शन सूचकांक और पुनरावृत्तियों की संख्या लौटाता है।
  9. यदि $x मध्य तत्व से बड़ा है, तो $low को मिडइंडेक्स 1 पर समायोजित करें (खोज को ऊपरी आधे तक सीमित करें)।
  10. यदि $x मध्य तत्व से कम है, तो $high को मिडइंडेक्स - 1 में समायोजित करें (खोज को निचले आधे तक सीमित करें)।

PHP में रैखिक खोज को समझना

रैखिक खोज सबसे सरल खोज एल्गोरिदम में से एक है जिसका उपयोग किसी सरणी में किसी विशेष तत्व को खोजने के लिए किया जाता है। आइए PHP में लीनियरसर्च फ़ंक्शन को तोड़ें।

function linearSearch(array $arr, float|int $x)
{
    for($i=0; $i 



फ़ंक्शन लीनियरसर्च दो पैरामीटर स्वीकार करता है:

  1. $arr: पूर्णांकों की एक सरणी।
  2. $x: खोजी जाने वाली संख्या, जो एक फ़्लोट या पूर्णांक हो सकती है।
  3. फॉर लूप सरणी के प्रत्येक तत्व पर पुनरावृत्त होता है। गिनती($arr) फ़ंक्शन सरणी में तत्वों की संख्या लौटाता है।
  4. लूप के अंदर, कोड जांचता है कि वर्तमान तत्व ($arr[$i]) $x के बराबर है या नहीं। यदि कोई मिलान पाया जाता है, तो यह उस सूचकांक को इंगित करने वाला एक संदेश लौटाता है जिस पर नंबर पाया गया था।
  5. यदि लूप संख्या ढूंढे बिना पूरा हो जाता है, तो फ़ंक्शन एक संदेश लौटाता है जो दर्शाता है कि संख्या सरणी में नहीं मिली थी।
  6. रैखिक खोज सीधी और लागू करने में आसान है। यह सरणी के प्रत्येक तत्व की क्रमिक रूप से जांच करता है जब तक कि वांछित तत्व नहीं मिल जाता है या सरणी के अंत तक नहीं पहुंच जाता है। यह दृष्टिकोण सरल है लेकिन बड़े सरणियों के लिए अक्षम हो सकता है, क्योंकि इसमें O(n) की समय जटिलता है।
विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/ayowandeapp/search-algorithms-2613?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए [email protected] से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3