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

Số phân đoạn trong một chuỗi trong C ++


Giả sử chúng ta có một chuỗi s. Chúng ta phải đếm số lượng phân đoạn trong một chuỗi, trong đó một phân đoạn được xác định là một chuỗi ký tự liền nhau (không có khoảng trắng).

Vì vậy, nếu đầu vào là "Xin chào, tôi yêu lập trình", thì đầu ra sẽ là 4, vì có 4 phân đoạn.

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • n:=0

  • để khởi tạo i:=0, khi i

    • nếu s [i] không bằng khoảng trắng thì -

      • (tăng n lên 1)

    • while (i

      • (tăng tôi lên 1)

  • trả lại n

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

#include <bits/stdc++.h>
using namespace std;
class Solution {
public:
   int countSegments(string s) {
      int n = 0;
      for(int i = 0; i < s.size(); i++){
         if(s[i] != ' ')
            n++;
         while( i < s.size() && s[i] != ' ')
            i++;
      }
      return n;
   }
};
main(){
   Solution ob;
   cout << (ob.countSegments("Hello, I love programming"));
}

Đầu vào

"Hello, I love programming"

Đầu ra

4