न्यूनतम स्पैनिंग पेड़ों का उपयोग सभी नोड्स को कम से कम कुल बढ़त वजन के साथ एक ग्राफ में जोड़ने के लिए किया जाता है। इन पेड़ों को खोजने के लिए दो सामान्य एल्गोरिदम Kruskal और Prim के एल्गोरिदम हैं। दोनों कुशल हैं लेकिन दृष्टिकोण और कार्यान्वयन में भिन्न हैं।

कुरुकल के अल्गोरिथम

Kruskal's एल्गोरिदम वजन से रेखा में सभी किनारों को सॉर्ट करता है। इसके बाद यह छोटा सा होने से शुरू होने वाले पेड़ में किनारों को जोड़ता है, यह सुनिश्चित करता है कि कोई चक्र नहीं बन रहा है। यह प्रक्रिया तब तक जारी रहती है जब तक सभी नोड जुड़े नहीं होते।

एल्गोरिथ्म विशेष रूप से स्पर्स ग्राफ़ के लिए प्रभावी है। यह कुशलतापूर्वक जांचने के लिए एक असंतुलित सेट डेटा संरचना का उपयोग करता है कि क्या एक किनारे को जोड़ना चक्र बना देगा।

प्राइमा अल्गोरिथम

प्राइम का एल्गोरिथ्म एक मनमाने ढंग से नोड से शुरू होता है और यह छोटा सा किनारा जोड़कर स्पैनिंग ट्री बढ़ता है जो पेड़ को एक नए नोड से जोड़ता है। यह तब तक जारी रहता है जब तक सभी नोड्स शामिल नहीं होते।

यह विधि अक्सर घने ग्राफ़ के लिए पसंद की जाती है। यह न्यूनतम वजन कुशलता से अगले किनारे का चयन करने के लिए प्राथमिकता कतार का उपयोग करता है।

तुलना और कार्यान्वयन

दोनों एल्गोरिदम न्यूनतम स्पैनिंग पेड़ को खोजने की गारंटी देते हैं, लेकिन उनकी दक्षता ग्राफ की संरचना पर निर्भर करती है। Kruskal के किनारों को छंटाई पर ध्यान केंद्रित करने के लिए सरल है, जबकि प्राइम की प्राथमिकता के कतार का उपयोग करके घने ग्राफ के साथ अधिक कुशल हो सकती है।

  • दुनिया भर में कुरुकल के प्रकार के किनारों
  • प्राइमा एक शुरुआती नोड से पेड़ बढ़ता है
  • दोनों दक्षता के लिए विभिन्न डेटा संरचनाओं का उपयोग करते हैं
  • विकल्प ग्राफ़ घनत्व और आकार पर निर्भर करता है