Palindrome Permutation

Run Settings
LanguageJava
Language Version
Run Command
//Given a string, write a function to check if it is a permutation of a palindrome. A palindrome is a word or phrase that is the same forwards and backwards. A permutation is a rearrangement of letters. The palindrome does not need to be limited to just dictionary words. import java.util.Scanner; class Main { public static void main(String[] args) { Scanner s = new Scanner(System.in); String str=s.nextLine(); Main m = new Main(); boolean palindroms = m.getPermutaionPalindrome(str); System.out.println(palindroms); } boolean getPermutaionPalindrome(String a){ return isPalindrome(a.toCharArray()); } boolean isPalindrome(char[] a){ boolean result = false; int[] val = new int[256];//assumption char[] letters = new char[256]; int actual_length = 0; for(int i=0;i<a.length ;i++){ if(val[a[i]] == 0){ letters[actual_length]=a[i]; actual_length++; } val[a[i]]++; } boolean one = false; for(int j=0; j< actual_length; j++){ char letter= letters[j]; int val2 = val[letter]; System.out.printf("%c count is %d\n",letter,val2); if(actual_length%2 == 0 && val2%2 == 0){ continue; }else if(actual_length%2 == 0 && val2%2 != 0){ return false; }else if(actual_length%2 != 0 && val2%2 == 0){ continue; }else if(actual_length%2 != 0 && val2%2 != 0){ if(one == true){ return false; }else{ one = true; } } } return true; } }
Editor Settings
Theme
Key bindings
Full width
Lines