मैं निम्नलिखित समस्या के लिए एक अच्छे एल्गोरिदम की तलाश कर रहा हूं: voxels (जो या तो खाली या भरा हो सकता है) के 3 डी ग्रिड को देखते हुए, यदि मैं दो गैर-आसन्न स्वर उठाता हूं, तो मैं जानना चाहता हूं कि क्या वे एक दूसरे से जुड़े हुए हैं अन्य स्वर।
उदाहरण के लिए (2 डी में स्थिति को स्पष्ट करने के लिए), जहां # एक भरा हुआ वर्ग है:
1 2 3
a # # #
b # #
c # # #
अगर मैं a3 और c3 चुनता हूं, तो मैं उन्हें जितनी जल्दी हो सके उतना निर्धारित करना चाहता हूं; अगर भरे हुए पिक्सेल के माध्यम से a3 और c3 के बीच एक रास्ता है। (वास्तविक स्थिति एक 3 डी voxel ग्रिड में है, निश्चित रूप से।)
मैंने बाढ़ के एल्गोरिदम और पथ खोजने वाले एल्गोरिदम को देखा है, लेकिन मुझे यकीन नहीं है कि किसे चुनना है। दोनों गैर-जरूरी काम करते हैं: बाढ़ भरण सभी स्वरों को भरने की कोशिश करता है, लेकिन इसकी जरूरत नहीं है। पथ-खोज एल्गोरिदम आमतौर पर सबसे छोटा रास्ता खोजने से चिंतित हैं, जो आवश्यक नहीं है। मैं तभी पता करने की जरूरत है एक रास्ता।
मुझे किस एल्गोरिथ्म का उपयोग करना चाहिए?
संपादित करें: टिप्पणियों के आधार पर, मुझे लगता है कि निम्नलिखित को जोड़ना चाहिए: स्वरों की सामग्री को पहले से नहीं जाना जाता है, और इसके अलावा, यह पता लगाने के लिए एल्गोरिथ्म की आवश्यकता है कि क्या एक स्वर के निष्कासन (खाली करने) से स्वरों का समूह टूट जाएगा? दो या दो से अधिक छोटे समूहों में।
c3->c2->b2->a2->a3
:?