首页
/
每日頭條
/
圖文
/
leetcode兩數之和怎麼算
leetcode兩數之和怎麼算
更新时间:2025-11-28 14:40:15

leetcode兩數之和怎麼算?本文答案參考自leetcode衆網友的題解(因為沒有官方題解[尬笑]),我來為大家講解一下關于leetcode兩數之和怎麼算?跟着小編一起來看一看吧!

leetcode兩數之和怎麼算(LeetCode算法筆記第29題)1

leetcode兩數之和怎麼算

本文答案參考自leetcode衆網友的題解。(因為沒有官方題解[尬笑])

題目描述

給定兩個整數,被除數 dividend 和除數 divisor。将兩數相除,要求不使用乘法、除法和 mod 運算符

返回被除數 dividend 除以除數 divisor 得到的商。

整數除法的結果應當截去(truncate)其小數部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2


不能使用乘法、除法和 mod 運算符 ?[思考]

那還有什麼運算呢?

對了,還有 加減 以及 比較底層的 位運算

此外,這裡還有正負号的問題,相信大家應該可以應對[靈光一閃]。

【方法1】(加)減法以及(位運算)優化

小學二年級([看])就學過:多次加就是乘,多次減就是除。

所以,我們可以用多次減法來模拟除法,像這樣:

9 / 2 = 4 (整除)

就等于 9 - 2 - 2 - 2 - 2 = 1

  1. 開啟循環,每次循環中将 被除數 減去 除數,并記錄次數
  2. 被除數 小于 除數 時結束循環,所記錄的次數就是答案。


這就是中等 (・∀・*)?怎麼可能!

如果要計算 1000000 / 1 ,那豈不是要減很多很多次?

有人說,可以判斷呀,判斷除數是不是 1.

那 1000000 / 2 ,1000000 / 3 也要判斷?

這不可能的吧 o((>ω< ))o

所以我們可以 放大除數 ,像這樣:

9 / 2 = 9 / 4 * 2 = 4

  1. 同樣開啟循環,每次循環中
    1. 如果 被除數 大于 除數,則将除數乘以二(對2情有獨鐘啊[耶]),直到被除數 小于 除數,然後将 被除數 減去 除數,并記錄 相當于原除數做減法 的次數
    2. 如果 被除數 小于 除數
      1. 如果除數是放大過的,則将除數除以二
      2. 如果除數是原來的,即可得到答案(即次數)

以上過程嚴格按照程序邏輯排版

其中,乘以二除以二的操作可以通過左右位移來實現

即 除數 << 1 表示乘以二,除數 >> 1 表示除以二

當然得注意除數的溢出問題。


以上描述可能有點細節上的模糊,但隻需理解其思想就行了( 吧?(⊙﹏⊙))

[來看我]​[來看我]​[來看我]

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
哲學關于社會的終極思考
哲學關于社會的終極思考
哲學有什麼用,是一個假問題哲學有什麼用?這是一個非常實際的問題,也是我在上課時學生最愛問的一個問題。我們這個時代是一個哲學沒落的時代,我常說,我們這個時代缺乏真正的哲學,我們很不幸,生活在這麼一個沒有哲學的時代。但是從另一個角度來說,我們也...
2025-11-28
黃家湖大道與武昌大道連通
黃家湖大道與武昌大道連通
楚天都市報7月9日訊(記者吳昌華通訊員李佳陳菲)今日記者從武漢交管部門獲悉,7月11日至明年5月10日,武昌區友誼大道将進行快速化改造工程施工,施工期間,為保障道路通行安全和群衆交通出行,友誼大道(七星路至秦園路)和惠安路(秦園路至秦臻路)...
2025-11-28
回放csgo搞笑時刻
回放csgo搞笑時刻
CS:GO比賽千千萬,但有些情景卻未必能在比賽裡見到。比如CS:GO中的成就“地獄之路”:使用閃光震撼彈緻盲—名敵人,令其因此誤殺自己隊友。這些時刻實在是很難遇得到……那麼大家在CS:GO中見過哪些罕見、或離譜的時刻呢?一起在評論區分享下吧...
2025-11-28
70年代香港歌壇叱咤風雲的人物
70年代香港歌壇叱咤風雲的人物
70年代香港歌壇叱咤風雲的人物?上世紀八十年代是香港粵語流行曲百花齊放的日子,也是香港樂壇的全盛時期,當時香港的流行曲引領亞洲中文歌曲潮流,中國内地和台灣地區的人縱然不谙粵語,亦愛聽粵語流行曲,下面我們就來說一說關于70年代香港歌壇叱咤風雲...
2025-11-28
長沙講哪種方言
長沙講哪種方言
戴鬥笠打啵——還隔一橋釋義:(與所設想的事物)相距很遠、差得很遠。打啵,親吻;橋,長沙話稱算盤上的檔位叫“橋”,所謂“隔一橋”,即指兩個數不在同一個檔位上,如個位數上的“5”和十位數“46”的“4”就隔一橋,故引申出相隔很遠的意思。例句:他...
2025-11-28
Copyright 2023-2025 - www.tftnews.com All Rights Reserved