欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java語言實現(xiàn)反轉(zhuǎn)鏈表代碼示例

 更新時間:2017年10月16日 10:14:06   作者:lilivian  
這篇文章主要介紹了Java語言實現(xiàn)反轉(zhuǎn)鏈表代碼示例,小編覺得挺不錯的,這里分享給大家,供需要的朋友參考。

問題描述

定義一個函數(shù),輸入一個鏈表的頭結(jié)點,反轉(zhuǎn)該鏈表并輸出反轉(zhuǎn)后的鏈表的頭結(jié)點。鏈表結(jié)點如下:

public class ListNode {
  int val;
  ListNode next = null;
  ListNode(int val) {
    this.val = val;
  }
}

思路1:

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

代碼:

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:

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

總結(jié)

以上就是本文關(guān)于Java語言實現(xiàn)反轉(zhuǎn)鏈表代碼示例的全部內(nèi)容,感興趣的朋友可以參閱:Java編程刪除鏈表中重復(fù)的節(jié)點問題解決思路及源碼分享、Java編程實現(xiàn)從尾到頭打印鏈表代碼實例以及本站其他相關(guān)專題,希望對大家有所幫助。如有不足之處,歡迎留言指出。

相關(guān)文章

  • MyBatis高級映射學習教程

    MyBatis高級映射學習教程

    這篇文章主要介紹了MyBatis高級映射學習教程的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • ConcurrentHashMap線程安全及實現(xiàn)原理實例解析

    ConcurrentHashMap線程安全及實現(xiàn)原理實例解析

    這篇文章主要介紹了ConcurrentHashMap線程安全及實現(xiàn)原理實例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • SpringBoot項目實現(xiàn)日志打印SQL的常用方法(包括SQL語句和參數(shù))

    SpringBoot項目實現(xiàn)日志打印SQL的常用方法(包括SQL語句和參數(shù))

    有時候遇到問題需要根據(jù)我們編寫的SQL進行分析,但如果不進行一些開發(fā)或者配置的話,這些SQL是不會打印到控制臺的,它們默認是隱藏的。下面給大家介紹幾種常用的方法,感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • 關(guān)于?Math.random()生成指定范圍內(nèi)的隨機數(shù)的公式推導(dǎo)問題

    關(guān)于?Math.random()生成指定范圍內(nèi)的隨機數(shù)的公式推導(dǎo)問題

    在 java 中,用于生成隨機數(shù)的 Math 方法 random()只能生成 0-1 之間的隨機數(shù),而對于生成指定區(qū)間,例如 a-b 之間的隨機數(shù),卻只能用相關(guān)計算公式,今天通過本文給大家介紹Math.random()生成隨機數(shù)的公式推導(dǎo)問題,感興趣的朋友一起看看吧
    2022-09-09
  • Java的HashSet源碼詳解

    Java的HashSet源碼詳解

    這篇文章主要介紹了Java的HashSet源碼詳解,HashSet底層封裝的是HashMap,所以元素添加會放到HashMap的key中,value值使用new Object對象作為value,所以HashSet和HashMap的所具有的特點是類似的,需要的朋友可以參考下
    2023-09-09
  • 聊聊Java 成員變量賦值和構(gòu)造方法誰先執(zhí)行的問題

    聊聊Java 成員變量賦值和構(gòu)造方法誰先執(zhí)行的問題

    這篇文章主要介紹了聊聊Java 成員變量賦值和構(gòu)造方法誰先執(zhí)行的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • spring4新特性之web開發(fā)增強

    spring4新特性之web開發(fā)增強

    這篇文章主要介紹了spring4新特性之web開發(fā)增強的相關(guān)資料,需要的朋友可以參考下
    2017-09-09
  • SpringBoot項目發(fā)送釘釘消息功能實現(xiàn)

    SpringBoot項目發(fā)送釘釘消息功能實現(xiàn)

    在工作中的一些告警需要發(fā)送釘釘通知,有的是發(fā)給個人,有的要發(fā)到群里,這時項目就需要接入釘釘,實現(xiàn)發(fā)消息的功能,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-02-02
  • java實現(xiàn)學生成績檔案管理系統(tǒng)

    java實現(xiàn)學生成績檔案管理系統(tǒng)

    這篇文章主要為大家詳細介紹了java實現(xiàn)學生成績檔案管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Spark?實現(xiàn)自定義加密的示例代碼

    Spark?實現(xiàn)自定義加密的示例代碼

    這篇文章主要介紹了Spark?實現(xiàn)自定義加密的示例代碼,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-07-07

最新評論