題目:
請實現乙個函式用來判斷字串是否表示數值(包括整數和小數)。例如,字串"+100",「5e2」,"-123",「3.1416"和」-1e-16"都表示數值。 但是"12e",「1a3.14」,「1.2.3」,"±5"和"12e+4.3"都不是。
思路:
數字的表現格式為(±)a.be/e(+-)c,a為整數部分,b為小數部分,c為指數部分
1、判斷整數部分是否有正負號
2、判斷整數部分的值,直到出現"."或「e/e」,則跳出迴圈;
3、判斷小數部分的值,直到出現「e/e」,則跳出迴圈;
4、判斷指數部分的值,直到遍歷完位元組陣列。
程式:
public
class
subject53
int index =0;
//是否有正負號
if(str[0]
=='+'
|| str[0]
=='-'
)//判斷整數部分
while
(index < str.length)
if(str[index]
=='e'
|| str[index]
=='e')if
(str[index]
>=
'0'&& str[index]
<=
'9')
return
false;}
//判斷小數部分
while
(index < str.length)
break;}
if(str[index]
>=
'0'&& str[index]
<=
'9')
return
false;}
//判斷指數部分是否有正負號
if(index < str.length &&
( str[index]
=='+'
|| str[index]
=='-'))
//判斷指數部分
while
(index < str.length)
return
false;}
return
true;}
public
static
void
main
(string args)
}
劍指Offer習題
1.二維陣列中的查詢 題目 在乙個二維陣列中 每個一維陣列的長度相同 每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。bool find int target,vector array else re...
劍指offer 53 表示數值的字串
請實現乙個函式用來判斷字串是否表示數值 包括整數和小數 例如,字串 100 5e2 123 3.1416 和 1e 16 都表示數值。但是 12e 1a3.14 1.2.3 5 和 12e 4.3 都不是。本題的主要解題思路如下 首先判斷字串是否為空,或者首元素是否為 若是是則直接返回false 否...
劍指offer 53 表示數值的字串
題目描述 請實現乙個函式用來判斷字串是否表示數值 包括整數和小數 例如,字串 100 5e2 123 3.1416 和 1e 16 都表示數值。但是 12e 1a3.14 1.2.3 5 和 12e 4.3 都不是。輸出描述 true false 在數值之前可能有乙個表示正負的 或者 接下來是若干個...