As part of Data Structures & Algorithms implementation using Rust, let's see how to solve Consecutive Characters
problem.
Leetcode problem link: https://leetcode.com/problems/consecutive-characters/
Problem Statement
Given a string s, the power of the string is the maximum length of a non-empty substring that contains only one unique character.
Return the power of the string.
Instructions
Example 1:
Input: s = "leetcode"
Output: 2
Explanation: The substring "ee" is of length 2 with the character 'e' only.
Example 2:
Input: s = "abbcccddddeeeeedcba"
Output: 5
Explanation: The substring "eeeee" is of length 5 with the character 'e' only.
Example 3:
Input: s = "triplepillooooow"
Output: 5
Example 4:
Input: s = "hooraaaaaaaaaaay"
Output: 11
Example 5:
Input: s = "tourist"
Output: 1
Constraints:
1 <= s.length <= 500
s contains only lowercase English letters.
Solution
Please find below the solution implemented using Rust
impl Solution {
pub fn max_power(s: String) -> i32 {
let mut ch: char = ' ';
let mut i1: i32 = 1;
let mut max: i32 = 1;
for (i, c) in s.chars().enumerate() {
if c != ch {
ch = c;
if i1 > max {
max = i1;
}
i1 = 1;
} else {
i1 += 1;
}
}
if i1 > max {
max = i1;
}
max
}
}
Please feel free to share your feedback.
Happy reading!!!
Top comments (0)