劍指Offer之Java算法習(xí)題精講鏈表專題篇
題目一
?解法
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int val, ListNode next) { this.val = val; this.next = next; } * } */ class Solution { public int getDecimalValue(ListNode head) { int[] arr = new int[31]; int index = 0; int ans = 0; while(head!=null){ arr[index] = head.val; index++; head = head.next; } for(int i = 0;i<index;i++){ if(arr[i]==1){ ans+=(1<<(index-1-i)); } } return ans; } }
題目二
?解法
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ class Solution { public int[] reversePrint(ListNode head) { int index = 0; ListNode h = head; while(head!=null){ head = head.next; index++; } int[] arr = new int[index]; while(h!=null){ arr[index-1] = h.val; index--; h = h.next; } return arr; } }
題目三
解法
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ class Solution { public ListNode mergeTwoLists(ListNode l1, ListNode l2) { ListNode node = new ListNode(-1); ListNode ans = node; while(l1!=null&&l2!=null){ if(l1.val<=l2.val){ node.next = l1; l1 = l1.next; }else{ node.next = l2; l2 = l2.next; } node = node.next; } if(l1!=null){ node.next = l1; } if(l2!=null){ node.next = l2; } return ans.next; } }
到此這篇關(guān)于劍指Offer之Java算法習(xí)題精講鏈表專題篇的文章就介紹到這了,更多相關(guān)Java 鏈表內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 劍指Offer之Java算法習(xí)題精講字符串操作與數(shù)組及二叉搜索樹(shù)
- 劍指Offer之Java算法習(xí)題精講二叉搜索樹(shù)與數(shù)組查找
- 劍指Offer之Java算法習(xí)題精講數(shù)組與字符和等差數(shù)列
- 劍指Offer之Java算法習(xí)題精講求和篇
- 劍指Offer之Java算法習(xí)題精講排列與N叉樹(shù)
- 劍指Offer之Java算法習(xí)題精講二叉樹(shù)專項(xiàng)解析
- 劍指Offer之Java算法習(xí)題精講二叉樹(shù)與鏈表
- 劍指Offer之Java算法習(xí)題精講數(shù)組與列表的查找及字符串轉(zhuǎn)換
相關(guān)文章
淺談java.util.concurrent包中的線程池和消息隊(duì)列
這篇文章主要介紹了淺談java.util.concurrent包中的線程池和消息隊(duì)列,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08淺談Java中File文件的創(chuàng)建以及讀寫(xiě)
文中有非常詳細(xì)的步驟介紹了Java中file文件的創(chuàng)建以及讀寫(xiě),對(duì)剛開(kāi)始學(xué)習(xí)java的小伙伴們很有幫助,而且下文有非常詳細(xì)的代碼示例及注釋哦,需要的朋友可以參考下2021-05-05Java?OpenCV學(xué)習(xí)之Mat的基本操作詳解
OpenCV用來(lái)存儲(chǔ)圖像,很多時(shí)候都會(huì)用到這個(gè)Mat方法。數(shù)字圖像可看做一個(gè)數(shù)值矩陣,?其中的每一個(gè)元素表明一個(gè)像素點(diǎn)。Mat在?OpenCV?中表示的是?N?維稠密矩陣,與稠密矩陣相對(duì)的是稀疏矩陣。本文將重點(diǎn)介紹OpenCV中Mat的一些基本操作,需要的可以參考一下2022-03-03Springboot如何使用filter對(duì)request body參數(shù)進(jìn)行校驗(yàn)
這篇文章主要介紹了Springboot如何使用filter對(duì)request body參數(shù)進(jìn)行校驗(yàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03java.sql.SQLTimeoutException異常的正確解決方法(親測(cè)有效!)
在我們編寫(xiě)程序的時(shí)候,有時(shí)候要進(jìn)行復(fù)雜的查詢時(shí),就會(huì)出現(xiàn)執(zhí)行sql時(shí)間過(guò)長(zhǎng),引起頁(yè)面執(zhí)行不了并提示執(zhí)行腳本超時(shí),這就是我們遇到超時(shí)異常,這篇文章主要給大家介紹了關(guān)于java.sql.SQLTimeoutException異常的正確解決方法,需要的朋友可以參考下2024-02-02java實(shí)現(xiàn)銀行ATM管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)銀行ATM管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05