劍指offer(java實現)第3題“從尾到頭列印連結串列”-牛客網
題目描述
輸入一個連結串列,按連結串列值從尾到頭的順序返回一個ArrayList。
時間限制:1秒 空間限制:32768K 熱度指數:571426
解答:
有多種解答方案:1,遞迴(本部落格列出的程式碼例項) 2,棧 3,倒轉連結串列指標,再從頭到尾列印
/**
* public class ListNode {
* int val;
* ListNode next = null;
*
* ListNode(int val) {
* this.val = val;
* }
* }
*
*/
import java.util.ArrayList;
public class Solution {//該思路是採用遞迴,從尾到頭依次列印連結串列節點
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
ArrayList arrayList = new ArrayList();
if (listNode == null) {
return arrayList;
}
printListFromTailToHead(arrayList, listNode);
return arrayList;
}
public void printListFromTailToHead(ArrayList array, ListNode listNode) {
if (listNode.next == null) {//當到達連結串列尾部時,將值新增到ArrayList
array.add(listNode.val);
}else {
printListFromTailToHead(array, listNode.next);//進入下一個節點
array.add(listNode.val);//自己的下一個節點執行完,回退到本節點時再將值新增進ArrayList
}
}
}
相關文章
- 3. 從尾到頭列印連結串列(劍指offer)
- 劍指offer-從尾到頭列印連結串列-phpPHP
- 力扣 - 劍指 Offer 06. 從尾到頭列印連結串列.md力扣
- 劍指OFFER-從頭到尾列印連結串列(Java)Java
- [程式設計題]從尾到頭列印連結串列 牛客網練習 java遞迴程式設計Java遞迴
- 【劍指offer】【3】輸入一個連結串列,從尾到頭列印連結串列每個節點的值。
- ④從尾到頭列印連結串列
- offer通過--5從尾到頭列印連結串列-2
- 劍指offer(java實現)第4題“重建二叉樹”-牛客網Java二叉樹
- [每日一題] 第九題:從尾到頭列印連結串列每日一題
- JZ-003-從尾到頭列印連結串列
- 劍指offer(java實現)第5題“用兩個棧實現佇列”-牛客網Java佇列
- 劍指offer——連結串列中倒數第k個結點
- PHPer也刷《劍指Offer》之連結串列PHP
- 劍指 Offer 24. 反轉連結串列
- 劍指 Offer 24.反轉連結串列
- 劍指 Offer 25. 合併兩個排序的連結串列 JavaScript實現排序JavaScript
- 劍指Offer-17-列印從1到最大的n位數-Java程式碼實現(兩種思路)Java
- 劍指 Offer 列印從1到最大n位數c++C++
- 利用PHP實現《劍指 offer》之連結串列(資料結構與演算法實戰 )PHP資料結構演算法
- 劍指offer面試題12:矩陣中的路徑(Java版已在牛客網AC)面試題矩陣Java
- 劍指offer第41~50題
- 劍指offer解析-上(Java實現)Java
- 劍指offer解析-下(Java實現)Java
- 力扣 - 劍指 Offer 22. 連結串列中倒數第k個節點力扣
- 劍指 Offer 35. 複雜連結串列的複製
- 【劍指 Offer 】17. 列印從1到最大的n位數
- 劍指offer | 17. 列印從1到最大的n位數
- 劍指 Offer 32 - I. 從上到下列印二叉樹(java解題)二叉樹Java
- 劍指offer面試題(41-50)——java實現面試題Java
- 劍指offer第49題 醜數
- 劍指offer面試題11:旋轉陣列的最小數字(Java版已在牛客網AC)面試題陣列Java
- 劍指offer-----刪除連結串列中的重複節點
- 劍指offer——兩個連結串列的第一個公共結點C++C++
- 二維陣列中的查詢——牛客劍指offer陣列
- 劍指Offer-38-兩個連結串列的第一個公共節點
- 劍指offer:刪去連結串列中重複的節點。(題解原始碼加圖解)原始碼圖解
- 劍指offer-第2章