LeetCode1221 分隔平衡字符串
程序员文章站
2024-03-19 19:34:58
...
package Ggreedy;
/**
* @Author Zhou jian
* @Date 2020 ${month} 2020/4/20 0020 11:26
* 分割平衡字符串
* 在一个平衡字符串中 L和R字符的数量是相同的
* 给出一个平衡字符串s,将它分隔成尽可能多的平衡字符出现韩
*/
public class Problem1221 {
//分割平衡字符串
public int balancedStringSplit(String s) {
//1、来两个变量,分别记录R和L的数量,当他们相等时,sum++
//2、返回sum
int sum = 0;
int countL = 0;
int countR = 0;
//将字符转换为字符串
char[] chars = s.toCharArray();
for (int i = 0; i < chars.length; i++) {
if (chars[i] == 'L') countL++;
else countR++;
//只要相等,可拆分成的平衡字符串的个数就加1:贪心体现在这
if (countL == countR) sum++;
}
return sum;
}
}
////判断字符串是否为平衡的
// public boolean isBanlance(String s,char L,char R){
//
// int lCount = 0;
// int rCount = 0;
//
// for(int i=0;i<s.length();i++){
// if(s.charAt(i)==L) lCount++;
// else if(s.charAt(i)==R) rCount++;
// }
//
// return lCount==rCount;
// }
//}