1.描述
一个镜像数字是指一个数字旋转180度以后和原来一样(倒着看)。例如,数字"69",“88”,和"818"都是镜像数字。
写下一个函数来判断是否这个数字是镜像的。数字用字符串来表示。
2.样例
样例1:
输入 : “69”
输出 : true
样例 2:
输入 : “68”
输出 : false
3.代码
public boolean isStrobogrammatic(String num) {
// write your code here
Map<Character, Character> map = new HashMap<>();
map.put('0', '0');
map.put('1', '1');
map.put('8', '8');
map.put('6', '9');
map.put('9', '6');
if (num.length() == 1) {
char c = num.charAt(0);
if (c == '6' || c == '9') {
return false;
}else if(c=='1' || c=='8' ||c=='0') {
return true;
}else {
return false;
}
} else if (num.length() == 2 && num.charAt(0) == '0') {
return false;
} else {
for (int i = num.length() - 1; i >= 0; i--) {
if (map.get(num.charAt(i)) == null) {
return false;
}
}
return true;
}
}