本地模拟单链表
package single_listimport ( "strconv"
) type ListNode struct { Val int Next * ListNode
}
func ( l * ListNode) String ( ) string { var res string for l != nil { res += strconv. Itoa ( l. Val) res += "->" l = l. Next} res += "nil" return res
} func ( list * ListNode) Add_single_list ( l * ListNode, Val int ) * ListNode { if l. Next == nil && l. Val == 0 { l. Val = Valreturn l} temp := new ( ListNode) temp. Val = Valtemp. Next = nil for l. Next != nil { l = l. Next} l. Next = tempreturn l
}
SingleList用法
package mainimport ( . "xxxxxxxxx/single_list" "fmt"
) func main ( ) { list := new ( ListNode) list. Add_single_list ( list, 1 ) list. Add_single_list ( list, 4 ) list. Add_single_list ( list, 3 ) list. Add_single_list ( list, 2 ) list. Add_single_list ( list, 5 ) list. Add_single_list ( list, 2 ) fmt. Println ( list)
}