leetcode No65. Valid Number
来源:互联网 发布:c语言大小写转化 编辑:程序博客网 时间:2024/05/22 00:35
Question:
Validate if a given string is numeric.
Some examples:"0"
=> true
" 0.1 "
=> true
"abc"
=> false
"1 a"
=> false
"2e10"
=> true
Note: It is intended for the problem statement to be ambiguous. You should gather all requirements up front before implementing one.
判断字符串是否是有效的数字表示
Algorithm:
用有效状态机解,这篇博客有详细的解释http://noalgo.info/995.html
Accepted Code:
class Solution {public: bool isNumber(string s) { int tran[][6]= { -1, 0, 1, 2,-1, 3, -1,-1,-1, 2,-1, 3, -1,-1,-1,-1,-1, 4, -1, 5,-1, 4, 6, 3, -1, 5,-1,-1, 6, 4, -1, 5,-1,-1,-1,-1, -1,-1, 7,-1,-1, 8, -1, 5,-1,-1,-1, 8, -1, 5,-1,-1,-1, 8, }; int state=0; for(int i=0;i<s.size();i++) { int input=0; if(s[i]==' ') input=1; else if(s[i]=='+' || s[i]=='-') input=2; else if(s[i]=='.') input=3; else if(s[i]=='e') input=4; else if(s[i]>='0' && s[i]<='9') input=5; else return false; state=tran[state][input]; if(state==-1) return false; } return state==3 || state==4 || state==5 || state==8; }};
0 0
- leetcode No65. Valid Number
- LeetCode: Valid Number
- LeetCode : Valid Number
- Leetcode: Valid Number
- [Leetcode] Valid Number
- leetcode 50: Valid Number
- [LeetCode] Valid Number
- 【leetcode】Valid Number
- [LeetCode]Valid Number
- [leetcode] Valid Number
- LeetCode | Valid Number
- LeetCode-Valid Number - 有限状态机
- leetcode Valid Number
- Leetcode: Valid Number
- 【leetcode】Valid Number
- Leetcode Valid Number
- LeetCode题解: Valid Number
- LeetCode Valid Number
- banner广告轮播的实现
- Informatica 初学日记全(转载)
- 简单的面向过程分页
- 父子进程对文件的操作
- Android 获取设置好的image.setImageResource(R.drawable.xxx)资源
- leetcode No65. Valid Number
- javax.el.PropertyNotFoundException: Property 'StuNum' not found on type com.gzsy.xtw.model.tb_studen
- 深度学习笔记(二)---反向传播算法
- 微信小程序开发资源整理
- 浮点数取模
- Android PermissionChecker 权限全面详细分析和解决方案
- mysql 提交读 可重复读
- 分享3个jar库
- Fatal signal 11 (SIGSEGV) at 0x7bddf000 (code=1), thread 23703 (Thread-20582)