他還有乙個高階,不能翻轉鍊錶,好吧我一開始就沒準備用鍊錶翻轉,棧不香嗎???
這題其實很簡單的,把兩個鍊錶分別入棧,stack1,stack2.
這時候就可以從小到大加了。直接小手一揮,**如下
public listnode addtwonumbers
(listnode l1, listnode l2)
while
(l2!=null)
//統計結果
int ans=0;
//每一次記錄當前的位數,第一位就乘以1,第二位就乘以2
int times=
1;
只要有乙個非空就繼續
while
(!stack1.
isempty()
||!stack2.
isempty()
) listnode prev=null;
//對結果鍊錶化,從後往前給結果
while
(ans!=0)
return prev;
}
美滋滋的試了測試案例就按提交了,萬萬沒想到的是竟然錯了。如果看**就直接發現錯誤的大佬就跳過,看**看的美滋滋,甚至還感覺寫的不錯的童鞋就可以停下來思考一下**錯了。
發個表情包隔斷一下,哈哈
大佬繼續跳過,已經放棄的童鞋,千萬別看答案,自己再看一看,我再給乙個提示,出錯的案例。
到這裡應該就很明朗了吧,其實這個問題的答案在標題裡就有了
超出int上限的就直接到integer.min_value去了。這題確實不難,但是有乙個警醒就是凡是有兩值計算的題,一定要考慮超出範圍的情況(雖然碰到過好幾次這樣的題,但是每次還是會上當,哭了…)
public listnode addtwonumbers
(listnode l1, listnode l2)
while
(l2!=null)
//用於表示進製,因為無法直接使用int值相加,所以就得
//每次累加上鍊表結果,所以需要一位來儲存每次的進製
int more=0;
//初始的上一位是null
listnode prev=null;
//繼續非空就迴圈,並且如果還有相加的進製的話也要進入迴圈
一文看懂,如何開通巨量千川賬戶!
4月9日,巨量千川正式上線,但是仍有不少朋友對巨量千川並不了解。官方定義巨量千川是圍繞抖店的廣告電商一體化平台,為商家和創作者提供抖音電商一體化營銷解決方案。簡單來說,巨量千川 dou 魯班 直播帶貨 短 帶貨 各種電商廣告環節。那麼巨量千川的優勢在 如何註冊巨量千川賬戶,使用巨量千川有哪些注意點?...
陣列與鍊錶 一文讀懂
資料結構是軟體開發中最基礎的部分了,它體現著我們程式設計的內功。大多數人在正兒八經學習資料結構的時候估計是在大學計算機課上,而在實際專案開發中,反而感覺到用得不多。其實也不是真的用得少,只不過我們在使用的時候被很多高階語言和框架元件封裝好了,真正需要自己去實現的地方比較少而已。但別人封裝好了不代表我...
一文輕鬆搞懂 鍊錶反轉
單鏈表反轉 時間複雜度o n 空間複雜度o 1 的方法主要有以下三種 前情提要 設定乙個鍊錶,帶有頭結點。元素為1 2 3 4 倒轉過來應該是 1.頭插法 從第二個元素開始,每次選取乙個元素插入到頭結點和第乙個節點之間。第一步 把2插到head和1之間 第二步 把3插入head與2之間 第三步 把4...