LeetCode Daily Challenge — 2020/07/12

Code is life.

Peter Liang
1 min readJul 12, 2020
Code is life.
Photo by Chris Ried on Unsplash

題目連結:

LeetCode Daily Challenge — 2020/07/12

題目敘述:

將一整數以二進位表示為 32 位元後反序之,並再返回整數。

題目解法:

1. 引用 bin() 將整數轉換為二進位表示(字串型態前兩位為'0b',在這邊先忽略不計),並以 [::-1] 方式反序之。2. 須注意區分正負數,以及若為正數,前面需補「0」至 32 位數(題目要求)。3. 結果以 int(x, 2) 函式將二進位數字轉換回整數,即可得正解。

程式碼(Python3):

LeetCode_0712.py

複雜度分析:

  • 時間複雜度:O(n)
bin() = O(logn), int(x, 2) = O(n)
  • 空間複雜度:O(1)
n, tmp 皆在常數空間內(即便 tmp * 31 仍是),故空間複雜度為 O(1)

--

--