2299. 强密码检验器 II
思路(Java)
首先设置一个flag数组,表示第2-5项是否满足
- 首先判断长度,小于8直接return false
- 遍历字符串,将其中第2-5个条件进行判断,只要有满足条件的那么f对应的flag[i]直接设为1,然后下次就不再需要进行此次判断(通过flag的值是否为0进行判断,如果为0,那么就继续进行判断,如果为1,那么就已存在满足条件的值,跳过即可)
- 最后一个条件,在遍历过程中,只要存在两个相同的连续字符,直接返回return false,节约时间
参考代码
public boolean strongPasswordCheckerII(String password) {
int len = password.length();
int[] flag = new int[4];
char[] str = password.toCharArray();
if(len < 8){
return false;
}
for(int i = 0; i < len; i++){
if(flag[0] == 0 &a