美文网首页facebook 面经
FB面经 数字字符字符串

FB面经 数字字符字符串

作者: Anseis | 来源:发表于2018-09-13 14:21 被阅读0次

    比较高频面经
    ab123
    ab111
    比较大小, 这题具体情况还是和面试官讨论

    static int method(String s1, String s2) {
        int i = 0;
        int j = 0;
        while (i < s1.length() && j < s2.length()) {
          char c1 = s1.charAt(i);
          char c2 = s2.charAt(j);
          if (Character.isDigit(c1) && Character.isDigit(c2)) {
            int n1 = c1-'0';
            int n2 = c2-'0';
            i++;
            j++;
            while (i < s1.length() && Character.isDigit(s1.charAt(i))) {
              n1 = n1*10 + s1.charAt(i) - '0';
              i++;
            }
            while (j < s2.length() && Character.isDigit(s2.charAt(j))) {
              n2 = n2*10 + s2.charAt(j) - '0';
              j++;
            }
            if (n1 > n2) {
              return 1;
            } else if (n1 < n2) {
              return -1;
            } 
          } else if (Character.isDigit(c1) && !Character.isDigit(c2)) {
            return -1;
          } else if (!Character.isDigit(c1) && Character.isDigit(c2)) {
            return 1;
          } else {
            if (c1 > c2) {
              return 1;
            } else if (c1 < c2) {
              return -1;
            } else {
              i++;
              j++;
            }
          }
        }
        
        if (i < s1.length()) {
          return 1;
        } else if (j < s2.length()) {
          return -1;
        }
        return 0;
      }
    

    相关文章

      网友评论

        本文标题:FB面经 数字字符字符串

        本文链接:https://www.haomeiwen.com/subject/lkpwgftx.html