बहु-वस्तु खोज एल्गोरिथ्म सूचीमा एक विशिष्ट तत्वको सबै घटनाहरू फेला पार्न प्रयोग गरिन्छ। एकल-वस्तु खोज एल्गोरिदमहरूको विपरीत, यो दृष्टिकोणले लक्ष्य तत्वको बहु घटनाहरूको ट्रयाक राख्छ र तिनीहरूको स्थितिहरूको सूची फर्काउँछ।
यो कसरी काम गर्दछ
- सूचीको सुरुबाट सुरु गर्नुहोस्।
- सूचीमा प्रत्येक तत्व मार्फत दोहोर्याउनुहोस्।
- हालको तत्वलाई लक्ष्य मानसँग तुलना गर्नुहोस्।
- यदि हालको तत्व लक्ष्य मान बराबर छ भने, यसको स्थिति रेकर्ड गर्नुहोस्।
- अर्को तत्वमा जारी राख्नुहोस् र 3-4 चरणहरू दोहोर्याउनुहोस्।
- सम्पूर्ण सूची मार्फत पुनरावृत्ति पछि, रेकर्ड स्थितिहरूको सूची फर्काउनुहोस्।
उदाहरण
पूर्णांकहरूको सूचीलाई विचार गरौं र हामी संख्या 23 को सबै घटनाहरू फेला पार्न चाहन्छौं।
सूची: {12, 23, 45, 23, 56, 23, 89, 90}
- सुरुबाट सुरु गर्नुहोस्: 12. इच्छित संख्या होइन।
- अर्को तत्वमा जानुहोस्: 23. मिलान फेला पर्यो, स्थिति 1 को रूपमा रेकर्ड गर्नुहोस्।
- अर्को तत्वमा जानुहोस्: 45. इच्छित संख्या होइन।
- अर्को तत्वमा जानुहोस्: 23. मिलान फेला पर्यो, स्थिति 3 को रूपमा रेकर्ड गर्नुहोस्।
- अर्को तत्वमा जानुहोस्: 56. इच्छित संख्या होइन।
- अर्को तत्वमा जानुहोस्: 23. मिलान फेला पर्यो, 5 को रूपमा स्थिति रेकर्ड गर्नुहोस्।
- अर्को तत्वमा जानुहोस्: 89. इच्छित संख्या होइन।
- अर्को तत्वमा जानुहोस्: 90. चाहिएको संख्या होइन।
- पुनरावृत्ति पछि, स्थितिहरूको सूची फर्काउनुहोस्: [1, 3, 5]।
C++ मा उदाहरण कोड
दिइएको उदाहरणमा, multipleItemSearch
पूर्णांकहरूको सूचीमा नम्बर 23 को सबै घटनाहरू फेला पार्न प्रकार्य प्रयोग गरिन्छ। नतिजा सबै घटनाहरूको स्थितिहरू समावेश गर्ने भेक्टर हुनेछ(स्थितिहरू ० बाट सुरु हुन्छ)।