मैं किसी बाहरी पुस्तकालय का उपयोग नहीं कर सकता, इसलिए मैं डेटा संरचना को स्वयं बनाने के कुछ तरीकों के बारे में सोचने की कोशिश कर रहा हूं। मैं शायद इस तरह कुछ सोच रहा था:जावा में भारित, निर्देशित ग्राफ का प्रतिनिधित्व करने के कुछ तरीके क्या हैं?
public class Node{
Set<Edge> adjacent;
int value;
}
public class Edge{
Node target;
int weight;
}
लेकिन मुझे लगता है कि ऐसा करने का शायद एक बेहतर तरीका है।
इस ग्राफ के लिए मेरा अंतिम उपयोग बेलमैन फोर्ड एल्गोरिदम को चलाने के लिए है, लेकिन मुझे स्पष्ट रूप से पहले एक कार्यशील ग्राफ की आवश्यकता है!
बेहतर काम करके क्या आप इसका मतलब है कि वे अधिक कुशल हैं? – Hoser
@ होसर ज्यादातर मामलों में, उत्तर "हां" है। फ़्लॉइड-वारशॉल जैसे विशेष मामलों में काम करने के लिए मैट्रिक्स की आवश्यकता होती है। जब आप एल्गोरिदम चलाते हैं, इसे चलाने के लिए मैट्रिक्स का निर्माण करते हैं, और आखिरकार मैट्रिक्स को आसन्न सूची में परिवर्तित करते हैं, तो आप आसन्नता सूची का प्रतिनिधित्व तब तक रख सकते हैं जब तक आप इसे चलाने के लिए मैट्रिक्स बनाते हैं। – dasblinkenlight
ठीक है धन्यवाद। इनमें से किसी के बारे में क्या उन्हें दिशा का समर्थन करता है? क्या वे वास्तव में दिशा को लागू करते हैं, या यह है कि मुझे कुछ प्रबंधित करना है? – Hoser