成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

golang中怎么反轉(zhuǎn)鏈表

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)golang中怎么反轉(zhuǎn)鏈表,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比漣源網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式漣源網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋漣源地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴。

問題:反轉(zhuǎn)一個(gè)單鏈表。
輸入: 1->2->3->4->5->NULL
輸出: 5->4->3->2->1->NULL

首先先認(rèn)識(shí)一下鏈表這個(gè)數(shù)據(jù)結(jié)構(gòu):

鏈表節(jié)點(diǎn)中有兩個(gè)元素:

  • 指針

type ListNode struct {
    Val  int
    Next *ListNode
}

Next指向下一個(gè)節(jié)點(diǎn)

golang中怎么反轉(zhuǎn)鏈表

那么這道題其實(shí)就是把指針指向前一個(gè)節(jié)點(diǎn)

位置調(diào)換次數(shù)precurwhole
0nil1->2->3->4->51->2->3->4->5
11->nil2->-3>->4->52->3->4->5->1->nil
22->1->nil3->4->53->4->5->2->1->nil
33->2->1->nil4->54->5->3->2->1->nil
44->3->2->1->nil55->4->3->2->1->nil

可以看出來

  • pre是cur的最前面那位(pre = cur)

  • cur就是當(dāng)前位的后面鏈表元素(cur = cur.Next)

  • cur.Next肯定是接pre(cur.Next = pre)

完整代碼:
package main

import "fmt"

//鏈表節(jié)點(diǎn)
type ListNode struct {
    Val  int
    Next *ListNode
}

//反轉(zhuǎn)鏈表的實(shí)現(xiàn)
func reversrList(head *ListNode) *ListNode {
    cur := head
    var pre *ListNode = nil
    for cur != nil {
        pre, cur, cur.Next = cur, cur.Next, pre //這句話最重要
    }
    return pre
}

func main() {
    head := new(ListNode)
    head.Val = 1
    ln2 := new(ListNode)
    ln2.Val = 2
    ln3 := new(ListNode)
    ln3.Val = 3
    ln4 := new(ListNode)
    ln4.Val = 4
    ln5 := new(ListNode)
    ln5.Val = 5
    head.Next = ln2
    ln2.Next = ln3
    ln3.Next = ln4
    ln4.Next = ln5

    pre := reversrList(head)
    fmt.Println(pre)
}

上述就是小編為大家分享的golang中怎么反轉(zhuǎn)鏈表了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

文章題目:golang中怎么反轉(zhuǎn)鏈表
當(dāng)前路徑:http://jinyejixie.com/article40/ijojho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司電子商務(wù)、云服務(wù)器、微信公眾號(hào)、網(wǎng)站策劃、面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
东至县| 秦安县| 汶上县| 江源县| 五河县| 中西区| 天镇县| 安丘市| 三台县| 白玉县| 香河县| 通辽市| 彰武县| 临城县| 古交市| 岳普湖县| 梨树县| 巴彦县| 梨树县| 黔东| 平罗县| 平乐县| 望江县| 刚察县| 德阳市| 昌黎县| 河西区| 齐河县| 轮台县| 文成县| 甘洛县| 陈巴尔虎旗| 芷江| 仙居县| 昭觉县| 栾城县| 沅江市| 连南| 高阳县| 柳林县| 济阳县|