劍指offer 面試67題

2022-04-23 01:51:18 字數 1168 閱讀 7297

面試67題:

題目:輸入描述:

輸入乙個字串,包括數字字母符號,可以為空
輸出描述:
如果是合法的數值表達則返回該數字,否則返回0
示例1

+2147483647

1a33

2147483647

0

解法一:如果可以利用python自帶的字串轉整數的庫函式,那麼有

#

-*- coding:utf-8 -*-

class

solution:

defstrtoint(self, s):

#write code here

try:

return

int(s)

except

:

return

0

解法二:只需考慮清楚怎麼處理特殊的情況就可。

#

-*- coding:utf-8 -*-

class

solution:

defstrtoint(self, s):

#write code here

numstrs=['

0','

1','

2','

3','

4','

5','

6','

7','

8','9'

] sum =0

label=1

for i in

range(len(s)):

if i==0:

if s[i]=='-'

: label=-1

continue

elif s[i]=='+'

:

continue

if s[i] in

numstrs:

sum =sum*10+numstrs.index(s[i])

else

: sum =0

break

return sum*label

劍指Offer(面試題6 7)

面試題6 重建二叉樹 題目 輸入某二叉樹的前序和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。假如輸入前序遍歷序列和中序遍歷序列。二叉樹結點的定義如下 struct binarytreenode 我們可以寫出如下的遞迴 根據前序和中序遍歷的順序確定二叉樹結構...

劍指offer 面試35題

面試35題 題目 複雜鍊錶的複製 題 輸入乙個複雜鍊錶 每個節點中有節點值,以及兩個指標,乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點 返回結果為複製後複雜鍊錶的head。注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空 解題思路一 python作弊法 解題 coding ...

劍指offer 面試33題

面試33題 題 二叉搜尋樹的後序遍歷序列 題目 輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷的結果。如果是則輸出yes,否則輸出no。假設輸入的陣列的任意兩個數字都互不相同。解題思路 遞迴 解題 coding utf 8 class solution defverifysquenceof...