首页
/
每日頭條
/
圖文
/
leetcode兩數之和怎麼算
leetcode兩數之和怎麼算
更新时间:2026-01-31 11:41:06

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
推荐阅读
如何看懂空調故障
如何看懂空調故障
長按圖片—識别二維碼,進入最新!變頻空調内部視頻培訓課程大彙總一、噪聲檢測法:噪聲檢測法主要通過傾昕壓縮機和風機等的運轉聲音來判斷故障。壓縮機和風機等運轉噪聲正常時,距離嵌入式空調器風機2m處,幾乎聽不到空調器風機運轉聲,這時噪聲為35~4...
2026-01-31
一人結核全家感染幾率
一人結核全家感染幾率
目前肺結核在我國依然具有較高的發病率,嚴重地危害了我們的健康。由于耐藥性等因素,結核病疫情在80年代後期明顯回升,重新蔓延,有一些年輕人也會患上肺結核。怎樣能有效預防肺結核呢?常開窗通風,回家洗手洗臉居室、辦公地點和密閉室内場所應該定時開窗...
2026-01-31
東非大裂谷能穿越嗎
東非大裂谷能穿越嗎
2020年是個不太平的年份,疫情蔓延全球,各個國家都籠罩在被疫情侵襲的恐懼中,就在這個時候,為了掩蓋政府無力抵抗疫情的批評浪潮,印度政府打起了邊境的主意,試圖轉移大衆的視線。去年6月,印度軍隊率先在加勒萬河谷與我國軍人爆發嚴重的肢體沖突,緊...
2026-01-31
江湖夢傅紅雪朱一龍
江湖夢傅紅雪朱一龍
朱一龍,也算卧薪嘗膽十年了吧!無論任何一個小角色,都用心去诠釋,落下腰傷毫不在意,終于因一部網劇《鎮魂》大火,風頭完全蓋過了同劇的男主白宇,當然,小編魔甯對這兩個都是喜歡得不要不要的,而且超級期盼他倆再合作個什麼雙男主劇的。(鎮魂女孩共同呼...
2026-01-31
秦始皇陵工程簡介
秦始皇陵工程簡介
公元前210年,中國曆史上的第一個皇帝——秦始皇逝世。他被安葬在了一座巨大的陵墓中,這座陵墓在他生前就開始修建,前後共花了39年時間,用工達到70多萬人,占到了當時全國總人口的1/10!秦始皇陵距離被發現已經有40多年,有考古學家表示,想見...
2026-01-31
Copyright 2023-2026 - www.tftnews.com All Rights Reserved