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

Tìm chỉ mục cuối cùng của một ký tự trong một chuỗi trong C ++

Giả sử chúng ta có một chuỗi str. Chúng ta có một nhân vật khác ch. Nhiệm vụ của chúng ta là tìm chỉ số cuối cùng của ch trong chuỗi. Giả sử chuỗi là “Hello” và ký tự ch =‘l’, thì chỉ mục cuối cùng sẽ là 3.

Để giải quyết vấn đề này, chúng tôi sẽ duyệt danh sách từ phải sang trái, nếu ký tự không giống với ‘l’ thì giảm chỉ số, nếu khớp thì dừng và trả về kết quả.

Ví dụ

#include<iostream>
using namespace std;
int getLastIndex(string& str, char ch) {
   for (int i = str.length() - 1; i >= 0; i--)
      if (str[i] == ch)
         return i;
   return -1;
}
int main() {
   string str = "hello";
   char ch = 'l';
   int index = getLastIndex(str, ch);
   if (index == -1)
      cout << "Character not found";
   else
      cout << "Last index is " << index;
}

Đầu ra

Last index is 3