1. 程式人生 > >劍指offer(五十五)之表示數值的字串

劍指offer(五十五)之表示數值的字串

題目描述

請實現一個函式用來判斷字串是否表示數值(包括整數和小數)。例如,字串"+100","5e2","-123","3.1416"和"-1E-16"都表示數值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。

程式碼1:

public class Solution {
    public boolean isNumeric(char[] str) {
        String string = String.valueOf(str);
        return string.matches("[\\+-]?[0-9]*(\\.[0-9]*)?([eE][\\+-]?[0-9]+)?");
    }
}
程式碼2:
<span style="color:#000099;">public class Solution {
    public boolean isNumeric(char[] str) {
        try {
            double re = Double.parseDouble(new String(str));
        } catch (NumberFormatException e) {
            return false;
        }
        return true;
    }
}</span>


相關推薦

offer翻轉單詞順序列

過程 大小 題目 決定 數字 god 彩票 代碼 撲克牌 一、題目   LL今天心情特別好,因為他去買了一副撲克牌,發現裏面居然有2個大王,2個小王(一副牌原本是54張^_^)...他隨機從中抽出了5張牌,想測測自己的手氣,看看能不能抽到順子,如果抽到的話,他決定去買體育

offer題】反轉連結串列

講的很好,有兩種方法 /* public class ListNode { int val; ListNode next = null; ListNode(int val

offer棧的壓入、彈出序列

img 完成 方法 [] 鏈接 span blog 分享 技術分享 一、題目   輸入兩個整數序列,第一個序列表示棧的壓入順序,請判斷第二個序列是否為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列

offer從上往下打印二叉樹

取出 打印二叉樹 port 二叉 遍歷 one 入隊 this () 一、題目   從上往下打印出二叉樹的每個節點,同層節點從左至右打印。 二、思路 二叉樹的層次遍歷,可以借助隊列實現。具體思路詳見註釋。 三、代碼 import java.util.Array

offer二叉樹中和為某一值的路徑

rgs one main java http ring dal offer for 一、題目   輸入一顆二叉樹和一個整數,打印出二叉樹中結點值的和為輸入整數的所有路徑。路徑定義為從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。 二、思路 詳見代碼 三、

offer二叉樹的深度

ret terminal pro roo 結點 路徑 splay close solution 一、題目   輸入一棵二叉樹,求該樹的深度。從根結點到葉結點依次經過的結點(含根、葉結點)形成樹的一條路徑,最長路徑的長度為樹的深度。 二、思路   遞歸,詳見代碼。 三、代碼

offer翻轉單詞順序列

i++ log cat 代碼註釋 pen nbsp term 註釋 als 一、題目   牛客最近來了一個新員工Fish,每天早晨總是會拿著一本英文雜誌,寫些句子在本子上。同事Cat對Fish寫的內容頗感興趣,有一天他向Fish借來翻看,但卻讀不懂它的意思。例如,“stu

offer撲克牌順子(序列是否連續)

play 過程 撲克 ide tin www. 今天 體育 現在 一、題目   LL今天心情特別好,因為他去買了一副撲克牌,發現裏面居然有2個大王,2個小王(一副牌原本是54張^_^)...他隨機從中抽出了5張牌,想測測自己的手氣,看看能不能抽到順子,如果抽到的話,他決定

offer(三七)從上往下列印二叉樹

題目描述 從上往下打印出二叉樹的每個節點,同層節點從左至右列印。 思路分析:使用兩個LIST,一個存放節點,一個存放值。先將根節點加入到LIST中,然後遍歷LIST中的元素,遍歷過程中,訪問該元素的左

offer(四七)平衡二叉樹

題目描述 輸入一棵二叉樹,判斷該二叉樹是否是平衡二叉樹。 程式碼: public class Solution { public boolean IsBalanced_Solution(Tree

offer 面試題20:表示數值字串

請實現一個函式用來判斷字串是否表示數值(包括整數和小數)。例如,字串"+100","5e2","-123","3.1416"和"-1E-16"都表示數值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。 可以用A[.[B]][e|EC]或者.B[e|EC

offer二題】數值的整數次方

題目描述 給定一個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。 public class Solution { public dou

offer》第六題(數組中唯一只出現一次的數字)

length pan clas row exceptio pass 面試 expect 數組 // 面試題56(二):數組中唯一只出現一次的數字 // 題目:在一個數組中除了一個數字只出現一次之外,其他數字都出現了三次。請 // 找出那個吃出現一次的數字。 #

offer》第八題(左旋轉字符串)

first iostream pbe bsp ++ temp pass 字符串 abcdefg // 面試題58(二):左旋轉字符串 // 題目:字符串的左旋轉操作是把字符串前面的若幹個字符轉移到字符串的尾部。 // 請定義一個函數實現字符串左旋轉操作的功能。比如輸

offer包含min函數的棧

question 保存 spl pop def ide aps pre sem 一、題目   定義棧的數據結構,請在該類型中實現一個能夠得到棧最小元素的min函數。 二、思路 用一個棧dataStack保存數據,用另外一個棧minStack保存依次入棧最小的數。每次元素存入

offer把二叉樹打印成多行

rac ger pty interview https 技術 記錄 ide clas 一、題目   從上到下按層打印二叉樹,同一層結點從左至右輸出。每一層輸出一行。二、思路 隊列LinkedList完成層序遍歷,用end記錄每層結點數目 三、代碼 impo

offer一之和為S的連續正數序列

劍指offer listt ++ 得到 closed 他在 pre www. 個數 一、題目   題目描述:小明很喜歡數學,有一天他在做數學作業時,要求計算出9~16的和,他馬上就寫出了正確答案是100。但是他並不滿足於此,他在想究竟有多少種連續的正數序列的和為100(

offer-每日6題第六天(java版)

原題連結:  第一題:整數中1出現的次數(從1到n整數中1出現的次數)  第二題:把陣列排成最小的數  第三題:醜數  第四題:第一個只出現一次的字元  第五題:陣列中的逆序對  第六題:兩個連結串列的第一個公共結點 第一題

offer-每日6題第七天(java版)

原題連結:  第一題:數字在排序陣列中出現的次數  第二題:二叉樹的深度  第三題:平衡二叉樹  第四題:陣列中只出現一次的數字  第五題:和為S的連續正數序列  第六題:和為S的兩個數字 第一題:數字在排序陣列中出現的次數

offer系列() 二叉樹中和為某一值的路徑,複雜連結串列的複製,

二叉樹中和為某一值的路徑 題目描述 輸入一顆二叉樹的跟節點和一個整數,打印出二叉樹中結點值的和為輸入整數的所有路徑。路徑定義為從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。(注意: 在返回值的list中,陣列長度大的陣列靠前) 解題思路: 深度優先遞迴遍歷樹, 把結點加入