# 2384. Largest Palindromic Number ###### tags: `Leetcode` `Medium` `Palindrome` Link: https://leetcode.com/problems/largest-palindromic-number/ ## 思路 先把所有数字出现的次数算出来 把答案分成两部分 front和end 然后再拼接起来 把单个的加在front的最后面 从大到小开始遍历所有数字然后加进front和end里面 ## Code ```java= class Solution { public String largestPalindromic(String num) { int[] cnt = new int[10]; for(int i=0; i<num.length(); i++){ int n = num.charAt(i)-'0'; cnt[n]++; } StringBuilder front = new StringBuilder(); StringBuilder end = new StringBuilder(); for(int i=9; i>=0; i--){ if(i==0 && front.length()==0 && end.length()==0) continue; while((cnt[i]/2)!=0){ front.append((char)(i+'0')); end.append((char)(i+'0')); cnt[i]-=2; } } for(int i=9; i>=0; i--){ if(cnt[i]!=0){ front.append((char)(i+'0')); break; } } return front.toString()+end.reverse().toString(); } } ```