题目分析
在某大厂的笔试中,我做过这道题目,不过当时的笔试较为简单,没有这个题目来的复杂。我们就来说一说这种判断是否合法的题目。
有限状态自动机
哇哦,名字就要起成我看不懂的样子,其实认真看下去也并不难,其主要是状态之间的来回转换。我们分析,合法的输入字符有哪些。
空格,符号,数字,小数点,e或者E。其他的都是不正确的输入。如果暴力if,当然也可以求解,在这里就不过多赘述,小伙伴们可以自行验证。
状态机,顾名思义,就是在状态之间来回转换,看一看能否到达最终的状态,如果可以则为有效输入,否则为无效输入。
下面在代码中对重要部分进行解读。
1 | class Solution: |
刷题总结
在这个文章里,详细的给小伙伴们捋了一下有限状态自动机的使用情景,小伙伴们需要认真审视自己的状态表,千万不要遗漏情况,要记得考虑一个字符的多种使用情景需要分配多种状态,记得这些事情,小伙伴们再也不用担心使用繁杂的if语句了。