কম্পিউটার টিউটোরিয়াল

C++-এ একই টেক্সটে বারবার সার্চ করা (ডেটা স্ট্রাকচার বিল্ড করে)


এটি একই টেক্সটে বারবার সার্চ করার C++ প্রোগ্রাম।

এলগরিদম

Begin
    অরিজিনাল স্ট্রিং এবং সার্চ করার প্যাটার্ন ইনপুট নিন।
    org_len = অরিজিনাল স্ট্রিং দৈর্ঘ্য
    pat_len = প্যাটার্ন দৈর্ঘ্য
    for i = 0 to (org_len - pat_len)
        for j = 0 to pat_len - 1
            if (org[i + j] != patt[j]) break;
            if (j == pat_len)
                Increase m.
        প্যাটার্ন পাওয়া পজিশন প্রিন্ট
    if (m == 0) প্রিন্ট "no match found"
    else প্রিন্ট "total number of instances found"
    return 0
End

উদাহরণ

#include <iostream>
#include <string.h>
using namespace std;

int main() {
    char org[150], patt[150];
    int i, j, m = 0, org_len, pat_len;
    cout << "\nEnter Original String:";
    cin >> org;
    cout << "Enter Pattern to Search:";
    cin >> patt;
    org_len = strlen(org);
    pat_len = strlen(patt);
    for (i = 0; i <= (org_len - pat_len); i++) {
        for (j = 0; j < pat_len; j++) {
            if (org[i + j] != patt[j])
                break;
        }
        if (j == pat_len) {
            m++;
            cout << "\nPattern Found at Position: " << i;
        }
    }
    if (m == 0)
        cout << "\nNo Match Found.";
    else
        cout << "\nTotal Number of Instances Found = " << m;
    return 0;
}

আউটপুট

Enter Original String: thisistutorialspoint.thisisac++program
Enter Pattern to Search: is
Pattern Found at Position: 2
Pattern Found at Position: 4
Pattern Found at Position: 23
Pattern Found at Position: 25
Total Number of Instances Found = 4
  1. সি++-এ একটি রেখার মিড-পয়েন্ট বের করার প্রোগ্রাম

  2. সি++-এ ত্রিভুজের কেন্ড্রয়েড (Centroid) বের করার প্রোগ্রাম

  3. বাইনারি সার্চ C++ প্রোগ্রামে

  4. C++-এ ট্রি বানানো ছাড়া দুটি BST একই কিনা তা যাচাই করা