स्ट्रिङ खोज (String Search) एल्गोरिदम मा Java

स्ट्रिङ खोज एल्गोरिथ्म Java एउटा ठूलो स्ट्रिङ भित्र विशेष सबस्ट्रिङ खोज्न प्रयोग गरिने प्रोग्रामिङको आधारभूत प्रविधि हो। यो एल्गोरिथ्म पाठ सम्पादकहरू, खोज इन्जिनहरू, र डेटा विश्लेषण उपकरणहरू सहित विभिन्न पाठ प्रशोधन अनुप्रयोगहरूमा व्यापक रूपमा कार्यरत छ।

कसरी स्ट्रिङ खोज एल्गोरिथ्म काम गर्दछ

स्ट्रिङ खोज एल्गोरिदमले मुख्य स्ट्रिङका क्यारेक्टरहरूसँग खोजी भइरहेको सबस्ट्रिङको प्रत्येक क्यारेक्टरलाई तुलना गरेर काम गर्छ। यो मुख्य स्ट्रिङ मार्फत दोहोर्याउँछ र एक एक गरेर क्यारेक्टरहरू तुलना गरेर सम्भावित मिलानको लागि जाँच गर्दछ। यदि मिल्दो फेला पर्यो भने, यसले मुख्य स्ट्रिङ भित्र सबस्ट्रिङको सुरूवात स्थितिलाई संकेत गर्छ।

स्ट्रिङ खोज एल्गोरिथ्मका फाइदाहरू र हानिहरू

फाइदा:

  • सरल कार्यान्वयन: एल्गोरिदम बुझ्न र कार्यान्वयन गर्न सजिलो छ, यसलाई आधारभूत स्ट्रिङ खोज कार्यहरूको लागि उपयुक्त बनाउँदै।
  • विभिन्न परिदृश्यहरूमा लागू: यो एल्गोरिथ्म अनुप्रयोगहरूको विस्तृत दायरामा प्रयोग गर्न सकिन्छ जुन पाठ डेटा भित्र विशिष्ट ढाँचाहरूको खोजी समावेश गर्दछ।

बेफाइदाहरू:

  • ठूला पाठहरूका लागि असक्षम: सबैभन्दा खराब अवस्थाहरूमा, एल्गोरिदमको समय जटिलता उच्च हुन सक्छ, जसले यसलाई ठूला पाठहरूको लागि अक्षम बनाउँछ।
  • सीमित ढाँचा मिलान: एल्गोरिदमको आधारभूत संस्करणले जटिल ढाँचा मिलान आवश्यकताहरू ह्यान्डल नगर्न सक्छ।

उदाहरण र व्याख्या

वाक्यमा एक विशिष्ट शब्द फेला पार्न स्ट्रिङ खोज एल्गोरिदम प्रयोग गर्ने एउटा उदाहरण विचार गरौं Java ।

public class StringSearchExample {  
    public static int searchString(String mainString, String substring) {  
        int mainLength = mainString.length();  
        int subLength = substring.length();  
  
        for(int i = 0; i <= mainLength- subLength; i++) {  
            int j;  
  
            for(j = 0; j < subLength; j++) {  
                if(mainString.charAt(i + j) != substring.charAt(j)) {  
                    break;  
                }  
            }  
  
            if(j == subLength) {  
                return i; // Substring found at position i  
            }  
        }  
  
        return -1; // Substring not found  
    }  
  
    public static void main(String[] args) {  
        String text = "The quick brown fox jumps over the lazy dog";  
        String search = "fox";  
  
        int position = searchString(text, search);  
  
        if(position != -1) {  
            System.out.println("Substring found at position: " + position);  
        } else {  
            System.out.println("Substring not found");  
        }  
    }  
}  

यस उदाहरणमा, एल्गोरिदमले दिइएको पाठ भित्र सबस्ट्रिङ "फक्स" खोज्छ। यसले पाठको प्रत्येक क्यारेक्टर मार्फत पुनरावृत्ति गर्छ, यसलाई सबस्ट्रिङका क्यारेक्टरहरूसँग तुलना गर्दछ। जब मिल्दो भेटिन्छ, एल्गोरिथ्मले पाठमा सबस्ट्रिङको सुरूवात स्थिति फर्काउँछ।

यसले कसरी स्ट्रिङ खोज एल्गोरिथ्मले ठूला पाठ डेटा भित्र सबस्ट्रिङहरू पत्ता लगाउन सक्छ, यसलाई Java प्रोग्रामिङमा पाठ हेरफेर र विश्लेषणको लागि आवश्यक प्रविधि बनाउँछ भनेर चित्रण गर्छ।