Strobogrammatic Number
一个数反转180度还是这个数,就叫 Strobogrammatic Number . 求一个string是不是 Strobogrammatic Number. 把所有的 Strobogrammatic Number 可能性放到一个map. 然后判断前后即可.和回文没啥区别
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
class Solution { public boolean isStrobogrammatic(String num) { Map<Character, Character> map = new HashMap<Character, Character>(); map.put('6', '9'); map.put('9', '6'); map.put('0', '0'); map.put('1', '1'); map.put('8', '8'); int i = 0; int j = num.length() - 1; while(i <= j){ if(map.get(num.charAt(i)) == null || map.get(num.charAt(j)) == null) return false; else if(map.get(num.charAt(i)) != num.charAt(j)) return false; i++; j--; } return true; } } |