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

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

是否可以在 goLang 的循環內創建新的鏈表節點?

是否可以在 goLang 的循環內創建新的鏈表節點?

Go
楊魅力 2022-12-05 16:39:23
我需要為鏈表創建一個節點并在函數中返回頭部。每個節點的定義:type ListNode struct {    Val  int    Next *ListNode}這是功能:func addTwoNumbers(l1 *ListNode, l2 *ListNode) []string {    calculateValue := func(l *ListNode) int {        var sumsum int        element := l        weight := 1        for element != nil {            sumsum = sumsum + element.Val*weight            weight = weight * 10            element = element.Next        }        return sumsum    }    numstr := strconv.Itoa(calculateValue(l1) + calculateValue(l2))    listsum := strings.Split(numstr, "")    return listsum}現在函數返回一個字符串列表,每個字符串都應該分配給Val每個節點。(Val 是一個整數,現在列表是字符串,我稍后可以處理)。因此,我們的想法是使用 for 循環遍歷列表并創建節點并將它們在 for 內鏈接在一起。它看起來像這樣(addTwoNumbers返回前的內部):    for _, element := range listsum{            }有沒有辦法做到這一點?
查看完整描述

1 回答

?
青春有我

TA貢獻1784條經驗 獲得超8個贊

評論中提到的解決方案

// create head with the value from first element

head := &ListNode{ Val: listSum[0] }


tail := head

// range remaining values

for _, sum := range listSum[1:] {

    node := &ListNode{ Val: sum }

    tail.Next = node // append node to list

    tail = node // change tail pointer to currently added node

}


查看完整回答
反對 回復 2022-12-05
  • 1 回答
  • 0 關注
  • 109 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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