LeetCode 練習題(簡單2)

2022-08-10 10:33:16 字數 2082 閱讀 2088

3. 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。

第一次錯誤答案:自己的解答直接忽略了負號和溢位的情況,假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 [−231,  231 − 1]。請根據這個假設,如果反轉後整       數溢位那麼就返回 0。

第二次錯誤答案:先利用str()函式將整數轉化為字串,然後反轉,再利用int()函式將字串轉化為整型,最後判斷數值是否溢位。

x<0時,字串擷取的方法不對

注:

python中字串切片方法

字串[開始索引:結束索引:步長]

切取字串為開始索引到結束索引-1內的字串

步長不指定時步長為1 字串[開始索引:結束索引]

一種正確解答:去符號->翻轉數字順序->算出數字->新增符號->判斷是否溢位->輸出

1

class

solution:

2def

reverse(self, x):

3 result_list =

4 i =05#

判斷x的正負,若為負則去掉符號

6if x<0:

7 num = (-1)*x

8else

:9 num =x

1011

#將數字翻轉

(注:// 為整數的除法;

pow()方法返回 xy(x的y次方) 的值。)

mysql 簡單練習題

create table student id int,name varchar 20 chinese float,english float,math float insert into student id,name,chinese,english,math values 1,張小明 89,78...

練習題目2

1 將陣列a中的內容和陣列b中的內容進行交換 陣列一樣大 思路 新建乙個陣列作為中間陣列進行交換.如下 2 計算1 1 1 2 1 3 1 4 1 5 1 99 1 100的值.思路 通過每一輪迴圈給分子乘以 1來控制加數的正負號,計算出和.如下 3 編寫程式數一下1到199的所有整數 現過多少次數...

程式練習題 2

考慮如下的序列生成演算法 從整數 n 開始,如果 n 是偶數,把它除以 2 如果 n 是奇數,把它乘 3 加1。用新得到的值重複上述步驟,直到 n 1 時停止。例如,n 22 時該演算法生成的序列是 22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1。人們猜想 沒有...