剑指offer 表示数值的字符串
Posted fdwzy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指offer 表示数值的字符串相关的知识,希望对你有一定的参考价值。
1 class Solution { 2 public: 4 bool isNumeric(char* string) 5 { 6 std::string str=string; 7 if(str.empty()){return true;} 8 bool if_e=false,if_dian=false; 9 for(int i=0;i<str.size();++i){ 10 char c=str[i]; 11 if(c==‘+‘ or c==‘-‘){ 12 if(i==0 or (i>0 and (str[i-1]==‘e‘ or str[i-1]==‘E‘))) 13 { 14 continue; 15 } 16 return false; 17 } 18 else if(c==‘.‘){ 19 if(if_dian or if_e){ 20 return false; 21 } 22 if_dian=true; 23 } 24 else if(c==‘e‘ or c==‘E‘){ 25 if(if_e){ 26 return false; 27 } 28 if_e=true; 29 } 30 else if(c<=‘9‘ and c>=‘0‘){ 31 continue; 32 } 33 else{ 34 return false; 35 } 36 } 37 return str.back()<‘0‘ or str.back()>‘9‘?false:true; 38 } 39 };
面向用例编程。。
以上是关于剑指offer 表示数值的字符串的主要内容,如果未能解决你的问题,请参考以下文章