一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java語言實現反轉鏈表代碼示例

Java語言實現反轉鏈表代碼示例

2021-01-19 10:46lilivian Java教程

這篇文章主要介紹了Java語言實現反轉鏈表代碼示例,小編覺得挺不錯的,這里分享給大家,供需要的朋友參考。

問題描述

定義一個函數,輸入一個鏈表的頭結點,反轉該鏈表并輸出反轉后的鏈表的頭結點。鏈表結點如下:

java" id="highlighter_142911">
?
1
2
3
4
5
6
7
public class ListNode {
  int val;
  ListNode next = null;
  ListNode(int val) {
    this.val = val;
  }
}

思路1:

要想反轉鏈表,對于結點i,我們要把它的next指向它的前趨,因此我們需要保存前趨結點,同時,如果我們已經把i的next重新賦值,會無法找到i的后繼,因此,在重新賦值之前,我們要保存i的后繼。

代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public ListNode ReverseList(ListNode head) {
    if(head == null){
      return null;
    }
    ListNode rHead = null;
    ListNode prior = null;//store prior
    ListNode q = head;//store current
    while(q != null){
      ListNode next = q.next;//store the next
      if(next == null){
        rHead = q;
      }
      q.next = prior;
      prior = q;
      q = next;
    }
    return rHead;
  }

思路2:

使用遞歸的思想(暫時沒有想到,因為如果用遞歸的話,每次應該是:鏈表的第一個結點<—遞歸返回的鏈表的尾指針,但是這樣的話就無法獲得反轉后的頭指針了。)后面再思考吧。

總結

以上就是本文關于Java語言實現反轉鏈表代碼示例的全部內容,希望對大家有所幫助。如有不足之處,歡迎留言指出。

原文鏈接:http://blog.csdn.net/lilianforever/article/details/51839810

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 晚上禁用的十大黄台视频 | 天天爱综合网 | 成人嗯啊视频在线观看 | 手机看片1024国产 | 国产日产韩产麻豆1区 | 国产亚洲女人久久久久久 | 免费大片| yjsp妖精视频在线观看免费 | 欧美xxxxx九色视频免费观看 | 69日本xxxhd | 羞羞答答免费人成黄页在线观看国产 | 办公室恋情在线 | 男生操女生动态图 | 哇嘎在线精品视频在线观看 | xxx中国bbbwww | 亚洲精品97福利在线 | 日本96在线精品视频免费观看 | 免费观看视频高清在线 | 特黄特黄aaaa级毛片免费看 | 黑人巨大和日本娇小中出 | 亚洲精品免费在线观看 | 44444色视频在线观看 | 国内自拍网红在线综合 | sex5·性屋娱乐 | 亚洲精品成人在线 | 欧美灰丝袜丝交nylons | 亚洲精品视频一区 | 婚前试爱全集免费观看 | 91大片淫黄大片在线天堂 | 日日操免费视频 | 国产伦久视频免费观看视频 | 免费日本在线视频 | 日本精品欧洲www | www.国产一区二区三区 | 99在线视频观看 | 动漫jk美女被爆羞羞漫画 | 免费视频精品一区二区 | 肉宠文很肉到处做1v1 | 好大好湿好硬好爽好深免费视频 | bestialitysex杂交| 欧美日韩视频一区三区二区 |