-
नुथ-मॉरिस-प्रैट एल्गोरिदम
नुथ मॉरिस प्रैट (KMP) एक एल्गोरिदम है, जो कैरेक्टर को बाएं से दाएं चेक करता है। जब एक पैटर्न में एक सब-पैटर्न सब-पैटर्न में एक से अधिक बार प्रकट होता है, तो यह उस गुण का उपयोग समय जटिलता में सुधार के लिए करता है, सबसे खराब स्थिति के लिए भी। KMP की समय जटिलता O(n) है। इनपुट और आउटपुट इनपुट: मुख्य स
-
मैनाचर का एल्गोरिदम
एक स्ट्रिंग से सबसे लंबा पालिंड्रोमिक सबस्ट्रिंग ढूंढने के लिए, हम मैनाचर के एल्गोरिदम का उपयोग कर सकते हैं। प्रत्येक कैरेक्टर को चुनकर, हम बाएं और दाएं पॉइंटर का उपयोग करके जांचने का प्रयास करेंगे कि क्या कोई पालिंड्रोम है। जानकारी स्टोर करने के लिए एक और ऐरे है, उस जानकारी से हम आसानी से ढूंढ सकत
-
नैव पैटर्न खोज
नैव पैटर्न खोज अन्य पैटर्न खोज एल्गोरिदम में सबसे सरल विधि है। यह मुख्य स्ट्रिंग के सभी कैरेक्टर की पैटर्न से जांच करता है। यह एल्गोरिदम छोटे टेक्स्ट के लिए सहायक है। इसे किसी प्री-प्रोसेसिंग चरण की आवश्यकता नहीं होती। हम स्ट्रिंग की एक बार जांच करके सबस्ट्रिंग ढूंढ सकते हैं। यह ऑपरेशन करने के लिए
-
राबिन-कार्प एल्गोरिदम
राबिन-कार्प पैटर्न खोज का एक और एल्गोरिदम है जो पैटर्न को अधिक कुशल तरीके से ढूंढता है। यह भी विंडो को एक-एक करके मूव करके पैटर्न की जांच करता है, लेकिन सभी केस के लिए सभी कैरेक्टर की जांच किए बिना, यह हैश मान ढूंढता है। जब हैश मान मेल खाता है, तभी यह प्रत्येक कैरेक्टर की जांच करने का प्रयास करता ह
-
सफिक्स ऐरे
एक दी गई स्ट्रिंग से, हम सभी संभावित सफिक्स प्राप्त कर सकते हैं। सफिक्स को लेक्सिकोग्राफिकल क्रम में सॉर्ट करने के बाद, हम सफिक्स ऐरे प्राप्त कर सकते हैं। सफिक्स ऐरे को सफिक्स ट्री का उपयोग करके भी बनाया जा सकता है। सफिक्स ट्री के DFS ट्रैवर्सल का उपयोग करके, हम सफिक्स ऐरे प्राप्त कर सकते हैं। सफिक
-
सभी सफिक्स का ट्राई
टेक्स्ट से, हम ट्री संरचना बनाने के लिए सभी सफिक्स उत्पन्न कर सकते हैं। हम जानते हैं कि टेक्स्ट में मौजूद हर पैटर्न, टेक्स्ट में संभावित सफिक्स में से एक का प्रीफिक्स होना चाहिए। सभी सफिक्स का ट्राई बनाकर, हम किसी भी सबस्ट्रिंग को रैखिक समय में ढूंढ सकते हैं। हर सफिक्स स्ट्रिंग टर्मिनेटिंग सिम्बल क
-
Z एल्गोरिदम
इस एल्गोरिदम का नाम Z एल्गोरिदम है क्योंकि, इस एल्गोरिदम में, हमें एक Z ऐरे बनाने की आवश्यकता होती है। Z ऐरे का आकार टेक्स्ट के आकार के समान होता है। इस ऐरे का उपयोग मुख्य स्ट्रिंग के वर्तमान कैरेक्टर से शुरू होने वाले सबसे लंबे संभावित सबस्ट्रिंग की लंबाई स्टोर करने के लिए किया जाता है। सबसे पहले,
-
हैमिल्टोनियन साइकिल
एक अनडायरेक्टेड ग्राफ में, हैमिल्टोनियन पथ एक ऐसा पथ है जो प्रत्येक वर्टेक्स को ठीक एक बार विजिट करता है, और हैमिल्टोनियन साइकिल या सर्किट एक हैमिल्टोनियन पथ है, जिसमें अंतिम वर्टेक्स से पहले वर्टेक्स तक एक एज होती है। इस समस्या में, हम यह निर्धारित करने का प्रयास करेंगे कि क्या ग्राफ में हैमिल्टोन
-
क्रुस्कल का न्यूनतम स्पैनिंग ट्री एल्गोरिदम
एक कनेक्टेड ग्राफ G(V, E) दिया गया है और प्रत्येक एज का वजन या लागत दी गई है। क्रुस्कल का एल्गोरिदम ग्राफ और लागत का उपयोग करके न्यूनतम स्पैनिंग ट्री ढूंढेगा। यह मर्ज-ट्री दृष्टिकोण है। प्रारंभ में, अलग-अलग ट्री होते हैं, यह एल्गोरिदम उन्हें न्यूनतम लागत वाले एज लेकर मर्ज करता है, और एक सिंगल ट्री
-
न्यूनतम सिक्का परिवर्तन समस्या
सिक्कों की एक सूची C(c1, c2, …Cn) दी गई है और एक मान V भी दिया गया है। अब समस्या यह है कि मान V बनाने के लिए न्यूनतम संख्या में सिक्कों का उपयोग किया जाए। नोट - मान लें कि सिक्कों C की अनंत संख्या है इस समस्या में, हम सिक्कों का एक सेट C{1, 2, 5, 10} पर विचार करेंगे, प्रत्येक प्रकार के सिक्कों की अ
-
न्यूनतम प्लेटफॉर्म समस्या
आगमन और प्रस्थान समय की एक सूची दी गई है। अब समस्या यह है कि रेलवे के लिए न्यूनतम संख्या में प्लेटफॉर्म ढूंढे जाएं ताकि कोई ट्रेन इंतजार न करे। सभी समय को क्रमबद्ध क्रम में सॉर्ट करके, हम आसानी से समाधान ढूंढ सकते हैं, इससे यह ट्रैक करना आसान होगा कि ट्रेन आ गई है लेकिन स्टेशन नहीं छोड़ी है। इस समस
-
प्रिम का न्यूनतम स्पैनिंग ट्री एल्गोरिदम
एक कनेक्टेड ग्राफ G(V, E) दिया गया है और प्रत्येक एज का वजन या लागत दी गई है। प्रिम का एल्गोरिदम ग्राफ G से न्यूनतम स्पैनिंग ट्री ढूंढेगा। यह एक बढ़ते हुए ट्री का दृष्टिकोण है। इस एल्गोरिदम को ट्री शुरू करने के लिए एक सीड मान की आवश्यकता होती है। सीड वर्टेक्स बढ़कर पूरे ट्री का निर्माण करता है। सम
-
एडजेसेंसी लिस्ट प्रतिनिधित्व के लिए प्रिम का MST
यह पिछले एल्गोरिदम के समान है। यहां एकमात्र अंतर यह है कि ग्राफ G(V, E) को एडजेसेंसी लिस्ट द्वारा दर्शाया गया है। एडजेसेंसी लिस्ट प्रतिनिधित्व के लिए टाइम कॉम्प्लेक्सिटी O(E log V) है। इनपुट और आउटपुट इनपुट: कॉस्ट मैट्रिक्स: आउटपुट: Edge: A--B And Cost: 1 Edge: B--E And Cost: 2 Edge: A--C And Cos
-
फ्रैक्शनल नैपसैक प्रॉब्लम
आइटम्स की एक लिस्ट दी गई है, प्रत्येक आइटम का अपना वैल्यू और वजन है। आइटम्स को एक नैपसैक में रखा जा सकता है जिसकी अधिकतम वजन सीमा W है। समस्या यह है कि ऐसा वजन ढूंढें जो W से कम या बराबर हो, और वैल्यू अधिकतम हो। नैपसैक प्रॉब्लम के दो प्रकार हैं। 0 – 1 नैपसैक फ्रैक्शनल नैपसैक 0 – 1 नैपसैक के
-
अहो-कोरासिक एल्गोरिदम
यह एल्गोरिदम दिए गए कीवर्ड्स के सेट की सभी घटनाओं को ढूंढने में सहायक है। यह एक प्रकार का डिक्शनरी-मैचिंग एल्गोरिदम है। यह सभी कीवर्ड्स का उपयोग करके एक ट्री स्ट्रक्चर बनाता है। ट्री बनाने के बाद, यह खोज को रैखिक समय में बनाने के लिए ट्री को ऑटोमेटन में बदलने का प्रयास करता है। अहो-कोरासिक एल्गोरिदम
-
एनाग्राम पैटर्न सर्च
एनाग्राम मूल रूप से किसी दी गई स्ट्रिंग या पैटर्न के सभी क्रमपरिवर्तन हैं। यह पैटर्न सर्चिंग एल्गोरिदम थोड़ा अलग है। इस मामले में, न केवल सटीक पैटर्न खोजा जाता है, यह टेक्स्ट में दिए गए पैटर्न के सभी संभावित व्यवस्थाओं को खोजता है। इस समस्या को हल करने के लिए, हम पूरे टेक्स्ट को पैटर्न के समान लंबा
-
बैड कैरेक्टर यूरिस्टिक
बैड कैरेक्टर यूरिस्टिक मेथड बॉयर-मूर एल्गोरिदम के दृष्टिकोणों में से एक है। दूसरा दृष्टिकोण गुड सफिक्स यूरिस्टिक है। इस मेथड में हम एक बैड कैरेक्टर ढूंढने का प्रयास करेंगे, जिसका अर्थ है मेन स्ट्रिंग का एक कैरेक्टर, जो पैटर्न से मेल नहीं खा रहा है। जब मिसमैच हुआ है, तो हम पूरे पैटर्न को तब तक शिफ्ट
-
बॉयर-मूर एल्गोरिदम
यह बॉयर-मूर एल्गोरिदम का एक अन्य दृष्टिकोण है। कभी-कभी इसे गुड सफिक्स यूरिस्टिक मेथड कहा जाता है। इस मामले में, एक प्रीप्रोसेसिंग टेबल सफिक्स टेबल के रूप में बनाई जाती है। इस प्रक्रिया में, सबस्ट्रिंग या पैटर्न को पैटर्न के अंतिम कैरेक्टर से खोजा जाता है। जब मेन स्ट्रिंग का एक सबस्ट्रिंग पैटर्न के स
-
क्विक सॉर्ट
क्विकसॉर्ट तकनीक लिस्ट को दो भागों में अलग करके की जाती है। प्रारंभ में, पार्टीशनिंग एल्गोरिदम द्वारा एक पिवट एलिमेंट चुना जाता है। पिवट का बायां भाग पिवट से छोटे मान रखता है, और दायां भाग बड़ा मान रखता है। पार्टीशनिंग के बाद, प्रत्येक अलग लिस्ट को उसी प्रक्रिया का उपयोग करके पार्टीशन किया जाता है।
-
रेडिक्स सॉर्ट
रेडिक्स सॉर्ट एक नॉन-कंपेरेटिव सॉर्टिंग एल्गोरिदम है। यह सॉर्टिंग एल्गोरिदम पूर्णांक कुंजियों पर काम करता है उन अंकों को ग्रुप करके जो समान स्थिति और मान साझा करते हैं। रेडिक्स एक संख्या प्रणाली का आधार है। जैसा कि हम जानते हैं कि दशमलव प्रणाली में रेडिक्स या आधार 10 है। इसलिए कुछ दशमलव संख्याओं को