go语言这个链表实现哪儿有问题?求路过大神指导
##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()
}
##打印结果,不管我是尾插,还是头插打印了一个出来。。。
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()
}
##打印结果,不管我是尾插,还是头插打印了一个出来。。。
...全文
相关推荐
Go语言单链表实现方法
"Go语言单链表实现方法"在计算机科学中,链表是一种常见的数据结构,用于存储一系列有序的数据元素。单链表是链表的一种简单形式,每个节点包含数据以及指向下一个节点的指针。本文将详细介绍如何在Go语
go语言实现单链表,并提供相应函数
go语言实现单链表,并提供相应函数单链表是一种基本的数据结构,它由一系列结点组成,每个结点包含一个值和一个指向下一个结点的指针。在go语言中,实现单链表需要定义两个结构体:Node和List。N
Golang 数据结构和算法 Data Structures & Algorithms In Go
- 强调了本书对于理解Go语言数据结构和算法实现的重要性。
go语言通过数组和链表的方式实现队列 数组和链表.pdf
"go语言通过数组和链表的方式实现队列"从给定的文件信息中,我们可以生成以下知识点:1.队列的定义:队列是一种特殊的线性表,只能在队列的尾部添加元素,在队列的头部删除元素,先进先出(FIFO)。
go-libs:Golang的一些有用的数据结构实现
Go语言,也称为Golang,以其简洁、高效的语法和强大的并发特性受到开发者们的喜爱。"go-libs"是一个开源项目,专注于提供Golang语言实现的一些常见但实用的数据结构。


其他技术讨论专区
