65. 有效数字

难度:困难

有效数字(按顺序)可以分成以下几个部分:

  1. 一个 小数 或者 整数
  2. (可选)一个 'e''E' ,后面跟着一个 整数

小数(按顺序)可以分成以下几个部分:

  1. (可选)一个符号字符('+''-'
  2. 下述格式之一:
    1. 至少一位数字,后面跟着一个点 '.'
    2. 至少一位数字,后面跟着一个点 '.' ,后面再跟着至少一位数字
    3. 一个点 '.' ,后面跟着至少一位数字

整数(按顺序)可以分成以下几个部分:

  1. (可选)一个符号字符('+''-'
  2. 至少一位数字

部分有效数字列举如下:

  • ["2", "0089", "-0.1", "+3.14", "4.", "-.9", "2e10", "-90E3", "3e+7", "+6e-1", "53.5e93", "-123.456e789"]

部分无效数字列举如下:

  • ["abc", "1a", "1e", "e3", "99e2.5", "--6", "-+3", "95a54e53"]

给你一个字符串 s ,如果 s 是一个 有效数字 ,请返回 true

示例 1:

输入:s = "0"
输出:true

示例 2:

输入:s = "e"
输出:false

示例 3:

输入:s = "."
输出:false

示例 4:

输入:s = ".1"
输出:true

提示:

  • 1 <= s.length <= 20
  • s 仅含英文字母(大写和小写),数字(0-9),加号 '+' ,减号 '-' ,或者点 '.'

模拟

class Solution:def isNumber(self, s: str) -> bool:num,dot,e = False,False,Falsefor i,c in enumerate(s):if c >= '0' and c <= '9':num = Trueelif c == '.' and not dot and not e:dot = Trueelif c.lower() == "e" and not e and num:e = Truenum = Falseelif (c=='+' or c=='-') and (i==0 or s[i-1].lower()=='e'):continueelse:return Falseif not num:return Falsereturn True

[LeetCode]65. 有效数字相关推荐

  1. Java实现 LeetCode 65 有效数字

    65. 有效数字 验证给定的字符串是否可以解释为十进制数字. 例如: "0" => true " 0.1 " => true "abc&q ...

  2. LeetCode - #65 有效数字

    前言 我们社区陆续会将顾毅(Netflix 增长黑客,<iOS 面试之道>作者,ACE 职业健身教练.)的 Swift 算法题题解整理为文字版以方便大家学习与阅读. LeetCode 算法 ...

  3. leetcode 65. 有效数字(正则表达式)

    题目 有效数字(按顺序)可以分成以下几个部分: 一个 小数 或者 整数 (可选)一个 'e' 或 'E' ,后面跟着一个 整数 小数(按顺序)可以分成以下几个部分: (可选)一个符号字符('+' 或 ...

  4. LeetCode 65. 有效数字(逻辑题,难)

    1. 题目 验证给定的字符串是否可以解释为十进制数字. 例如: "0" => true " 0.1 " => true "abc" ...

  5. 【To Do! 重点 正则表达式】LeetCode 65. Valid Number

    LeetCode 65. Valid Number 本博客转载自:[1]http://www.cnblogs.com/yuzhangcmu/p/4060348.html [2]https://blog ...

  6. LeetCode 64最小路径和65有效数字66加一

    原创公众号:bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 关注后回复进群即可加入力扣打卡群,欢迎划水.近期打卡: LeetCode打卡 52八皇后Ⅱ&53最大子序和& ...

  7. leetcode 65 python

    题目要求: https://leetcode-cn.com/problems/valid-number/

  8. LeetCode 73矩阵置零74搜素二维矩阵75颜色分类

    新人公众号(求支持):bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注回复进群即可加入力扣打 ...

  9. LeetCode 70爬楼梯71简化路径72编辑距离(dp)

    新人公众号(求支持):bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注这个潇洒青年一起飞,回 ...

最新文章

  1. 在Linux下gcc缺省编译,在Linux下GCC将文件合起来编译
  2. ##API(七)————日期操作类(二)
  3. Elasticsearch6.X 去重
  4. win10关闭快速启动_装系统不求人,快速制作启动U盘,傻瓜式重装WIN10
  5. 主打“云安全” 迅雷系帝恩思登陆新三板
  6. oracle session_wait,转载:学习Oracle动态性能表-(8)-V$SESSION_WAIT,V$SESSION_EVENT
  7. oracle查询本身字符集,Oracle字符集问题总结
  8. C++ STL list的大小
  9. AWS上的实例无法ping通的解决方案
  10. ESXI NUMA node 1 has no memory..
  11. C语言知识点总结(三)
  12. python 抓取豆瓣一拍一所有妹子客片
  13. docx文档文字怎么加边框,WORD文档给文字加的边框,如何调大小
  14. 树莓派Raspberry Pi Pico开发板踩坑:重置后设备管理器各种不识别,未知设备/unknown device
  15. 运维是做什么的?史上最全互联网Linux工作规划!十分钟找到linux运维工程师职业方向!...
  16. 如何解决oracle中文乱码问题,oracle中解决中文乱码问题
  17. 优秀的人是如何通过互联网赚钱的,4个案例告诉你
  18. uni-app--》什么是uniapp?如何开发uniapp?
  19. Unix编程/应用问答中文版(转)
  20. 《C++ Primer》第15章 15.4节习题答案

热门文章

  1. 简述python re模块正则的贪婪方式与非贪婪方式
  2. 报错:‘xxxx‘ is declared but its value is never read.Vetur(6133)
  3. 基于asp.net的社会保险档案管理系统
  4. Nmap中NSE数据文件分析
  5. 化学中计算机模拟试题,计算机在化学中的应考试试卷-2015.doc
  6. 深度学习 - 25.TF TF1.x VS TF2.x tf.feature_column
  7. css中伪类after before用法
  8. 企业技术中心认定有什么好处
  9. 解决报错:PermissionError: [WinError 32] 另一个程序正在使用此文件,进程无法访问。PermissionError: [WinError 5] 拒绝访问。
  10. Qt炫酷图片预览(非QML)