Advertisement
ASabry

Untitled

Mar 12th, 2020
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.85 KB | None | 0 0
  1. #include <iostream>
  2. #include <algorithm>
  3.  
  4. using namespace std;
  5.  
  6. struct SuffixArray
  7. {
  8. int id;
  9. string str;
  10. };
  11.  
  12. void insert(string word,SuffixArray arr[])
  13. {
  14. for(int i = 0; i < word.length(); i++)
  15. {
  16. for ( int k = i ; k < word.length(); k++)
  17. {
  18. arr[i].str += word[k];
  19. }
  20. arr[i].id = i;
  21. }
  22.  
  23.  
  24. }
  25.  
  26. void print(SuffixArray arr[],int size)
  27. {
  28. for ( int k = 0 ; k < size; k++)
  29. {
  30. cout << arr[k].str << "," << arr[k].id << endl;
  31. }
  32. }
  33.  
  34. bool Compare(SuffixArray suf1,SuffixArray suf2)
  35. {
  36. if(suf1.str < suf2.str)
  37. return true;
  38.  
  39. return false;
  40. }
  41.  
  42. int main()
  43. {
  44.  
  45. string word="banana";
  46. SuffixArray arr[word.length()];
  47.  
  48. insert(word,arr);
  49.  
  50. sort(arr,arr+word.length(),Compare);
  51. print(arr,word.length());
  52.  
  53. return 0;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement