最后更新
二刷
15-Jan-2017翻船了= = 还是要仔细点。
Time: O(n)
Space: O(1)public class Solution { public boolean isStrobogrammatic(String num) { int l = 0; int r = num.length() - 1; char[] strs = num.toCharArray(); while (l < r) { if (!isOK(strs[l++], strs[r--])) return false; } if (l == r) { return strs[l] == '0' || strs[l] == '8' || strs[l] == '1'; } else { return true; } } public boolean isOK(char a, char b) { if (a == '0' && b == '0') return true; if (a == '8' && b == '8') return true; if (a == '1' && b == '1') return true; if (a == '6' && b == '9') return true; if (a == '9' && b == '6') return true; return false; }}
一刷
20-Oct-2016
难点在于strobogrammatic的发音。
似乎念作
死装爆姑如额 卖题克。。 或者 死装爆姑 如爱么题克。。重音在哪呢。。?????
我他妈在浪费时间……
public class Solution { public boolean isStrobogrammatic(String num) { // 0 1 8 6 9 if(num.length() == 0) return true; int l = 0; int r = num.length()-1; while(l < r){ if(!isOK(num.charAt(l++),num.charAt(r--))) return false; } if(l == r) return num.charAt(l) == '0' || num.charAt(l) == '1' || num.charAt(l) == '8'; else return true; } public boolean isOK(char l, char r){ if(l == r) return l == '0' || l == '1' || l == '8'; else return ((l == '9' && r == '6')||(l == '6' && r == '9')); }}