Что за адский тест моему методу устраивает Валентин?)
Подкиньте проверочных данных, кто знает, или укажите на ошибку )
package com.javarush.task.task39.task3908;
/*
Возможен ли палиндром?
*/
import java.util.Locale;
public class Solution {
public static void main(String[] args) {
System.out.println(isPalindromePermutation("a") + " true");
System.out.println(isPalindromePermutation("aa") + " true");
System.out.println(isPalindromePermutation("aba") + " true");
System.out.println(isPalindromePermutation("abab") + " true");
System.out.println(isPalindromePermutation("asssab") + " false");
System.out.println(isPalindromePermutation("ПриПриПриПри")+ " true");
}
public static boolean isPalindromePermutation(String s) {
if (s!=null&&s.length()>0) {
int stringLength=s.length();
if (s.length()<2)return true;
int[] charsFromString = s.toLowerCase().chars().sorted().toArray();
int prev=-1;
int no_pair=0;
boolean checkDouble=false;
for (int i = 0; i < stringLength ; i++) {
if (!checkDouble) {
prev = charsFromString[i];
checkDouble = true;
if ((i+1)==stringLength)no_pair++;
}
else {
if (prev!=charsFromString[i])
{
no_pair++;
prev=charsFromString[i];
}
else checkDouble=false;
}
if (no_pair>1)return false;
}
return true;
}
return false;
}
}