今天面试遇到的问题:
给定一个正整数 例如:123344445, 需要对数字翻转后去除重复, 返回: 54321
public static int reverseAndDeDuplication(Integer num)
{
String str = String.valueOf(num);
StringBuffer sb = new StringBuffer();
Map<Character, Integer> map = new HashMap<>();
for (int i = str.length() - 1; i >=0; i--) {
if(map.get(str.charAt(i)) == null)
{
map.put(str.charAt(i), 1);
sb.append(str.charAt(i));
}
else
{
map.put(str.charAt(i), map.get(str.charAt(i)) + 1);
}
}
return Integer.valueOf(sb.toString());
}
本文介绍了一道常见的编程面试题目:给定一个正整数,通过翻转并去除重复数字得到一个新的整数。文章提供了一个具体的Java实现案例,并详细展示了如何逐个检查数字字符、使用哈希表进行去重以及最终构建结果字符串的过程。
1616

被折叠的 条评论
为什么被折叠?



