Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình C ++ để triển khai thuật toán tìm kiếm chuỗi cho kích thước văn bản ngắn

Trong chương trình C ++ này, dưới dạng đầu vào, một văn bản và một mẫu được đưa ra. Khi đầu ra, mẫu được tìm kiếm trong văn bản và tất cả các bản sao của mẫu sẽ được cung cấp.

Thuật toán

Begin
   Take the string and pattern as input.
   Declare the original and duplicate array with their size.
   Put the lengths of original and duplicate in len_ori and len_dupli.
   Make a loop for find out the position of the searched pattern.
   If pattern is not found, print not found otherwise print the no of instances of the searched pattern.
End

Mã mẫu

#include<iostream>
#include<cstring>
using namespace std;

int main() {
   char ori[120], dupli[120];
   int i, j, k = 0, len_ori, len_dupli;

   cout<<"enter string without any blank space"<<endl;

   cout<<"\nEnter Original String:";
   cin>>ori;

   cout<<"Enter Pattern to Search:";
   cin>>dupli;

   len_ori = strlen(ori);
   len_dupli = strlen(dupli);

   for (i = 0; i <= (len_ori - len_dupli); i++) // loop to find out the position Of searched pattern {
      for (j = 0; j < len_dupli; j++) {
         if (ori[i + j] != dupli[j])
         break ;
      }
      if (j == len_dupli) {
         k++;
         cout<<"\nPattern Found at Position: "<<i;
      }
   }
   if (k == 0)
      cout<<"\nNo Match Found!";
   else
      cout<<"\nTotal Instances Found = "<<k;
      return 0;
}

Đầu ra

enter string without any blank space

Enter Original String:Enter Pattern to Search:
Pattern Found at Position: 0
Pattern Found at Position: 1
Pattern Found at Position: 2
Pattern Found at Position: 3
Total Instances Found = 4