亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我無法創建長鏈接列表

我無法創建長鏈接列表

Go
滄海一幻覺 2023-03-21 17:08:08
package mainfunc main() {    var arr [99]ListNode    for i := 0; i < 99; i++ {        var tempArr ListNode        tempArr.Val = i        arr[i] = tempArr    }    for i := 0; i < 98; i++ {        arr[i].Next = &arr[i+1]    }}type ListNode struct {    Val  int    Next *ListNode}我想創建一個包含 99 個元素的鏈表,但它每 3 個節點中斷一次。有關詳細信息,請參見下圖:
查看完整描述

1 回答

?
慕尼黑8549860

TA貢獻1818條經驗 獲得超11個贊

您的鏈接列表工作正常,但它不是創建鏈接列表的正確方法。您只有 3 個節點的原因是您的調試器跟蹤限制。我寫了一個打印循環來顯示鏈表中的值。


package main


func main() {

    var arr [99]ListNode

    for i := 0; i < 99; i++ {

        var tempArr ListNode

        tempArr.Val = i

        arr[i] = tempArr

    }

    for i := 0; i < 98; i++ {

        arr[i].Next = &arr[i+1]

    }

}


type ListNode struct {

    Val  int

    Next *ListNode

}

我還編寫了另一個代碼來展示如何以正確的方式創建鏈表。


package main


import "fmt"


func main() {

    start := &ListNode{}

    node := start

    for i := 0; i < 100; i++ {

        node.Val = i

        node.Next = &ListNode{}

        node = node.Next

    }

    for node := start; node.Next != nil; node = node.Next {

        fmt.Printf("%d -> ", node.Val)

    }

}


type ListNode struct {

    Val  int

    Next *ListNode

}


查看完整回答
反對 回復 2023-03-21
  • 1 回答
  • 0 關注
  • 107 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號