7.12 无法AC
7.14 差一点 AC 不做了!先跳过这题!

题目描述


原题链接:https://leetcode-cn.com/problems/biao-shi-shu-zhi-de-zi-fu-chuan-lcof/

解题思路一:正则表达式


  1. [] : 字符集合
  2. () : 分组
  3. ? : 重复 0 ~ 1
  4. + : 重复 1 ~ n
  5. * : 重复 0 ~ n
  6. . : 任意字符
  7. \\. : 转义后的
  8. \\d : 数字
  9. \\s : 空格
  • 缺点是执行时间太长!
  • 面试要是问到这题算我倒霉!我就这么写了!

  • 小数的情况可以汇总写在一个括号里面!

  • 如果是可选的话,就说明要么1个要么0个,正则表达式表示就是 ?

    class Solution {
      public boolean isNumber(String s) {
      if (s == null || s.length() == 0) return false;
                                          // 小数             // 整数           
      return new String(s).matches("\\s* (([+-]?\\d*\\.?\\d+)|([+-]?\\d+\\.?)) ([eE][+-]?\\d+)? \\s*");
      }
    }
    

解题思路二:有限状态自动机(超级麻烦!面试看能不能用正则吧!先不死磕这题!)