go语言这个链表实现哪儿有问题?求路过大神指导

weixin_38060626 weixin_38060626 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
##link.go 的代码如下:
package main

import "fmt"

type LinkNode struct {
data interface{}
next *LinkNode
}

type Link struct {
head *LinkNode
tail *LinkNode
}

func (p *Link) InsertHead(data interface{}) {
node := &LinkNode{
data: data,
next: nil,
}
if p.head == nil && p.tail == nil {
p.head = node
p.tail = node
return
}
node.next = p.head
p.head = node

}

func (p *Link) InsertTail(data interface{}) {
node := &LinkNode{
data: data,
next: nil,
}

if p.head == nil && p.tail == nil {
p.head = node
p.tail = node
return
}
p.tail.next = node
p.tail = node

}

func (p *Link) Trans() {
q := p.head
if q != nil {
fmt.Println(q.data)
q = q.next
}

}`

##测试的main.go 代码如下:


' package main

func main() {
var l Link
for i := 1; i < 10; i++ {
l.InsertTail(i)
//l.InsertTail(fmt.Sprintf("str %d", i))

}
l'.T-ns()
}


##打印结果,不管我是尾插,还是头插打印了一个出来。。。

...全文

相关推荐

评论 5
收藏 已收藏
分享
返回顶部