使用Go语言创建LinkedList可以通过定义一个结构体来表示链表节点,然后使用指针将节点连接起来。以下是一个示例代码:
package main
import "fmt"
type Node struct {
data interface{}
next *Node
}
type LinkedList struct {
head *Node
}
func (list *LinkedList) Add(data interface{}) {
newNode := &Node{data: data, next: nil}
if list.head == nil {
list.head = newNode
} else {
current := list.head
for current.next != nil {
current = current.next
}
current.next = newNode
}
}
func (list *LinkedList) Print() {
current := list.head
for current != nil {
fmt.Println(current.data)
current = current.next
}
}
func main() {
list := LinkedList{}
list.Add(1)
list.Add(2)
list.Add(3)
list.Print()
}
在上述代码中,我们定义了一个Node结构体来表示链表的节点,其中data字段用于存储节点的数据,next字段用于指向下一个节点。然后,我们定义了一个LinkedList结构体来表示整个链表,其中head字段指向链表的头节点。
通过Add方法,我们可以向链表中添加新的节点。如果链表为空,则将新节点设置为头节点;否则,遍历链表找到最后一个节点,并将其next字段指向新节点。
通过Print方法,我们可以打印链表中的所有节点的数据。
在main函数中,我们创建了一个LinkedList对象,并向其中添加了三个节点,然后调用Print方法打印链表中的数据。
这是一个简单的使用Go语言创建LinkedList的示例。在实际应用中,可以根据需要扩展链表的功能,例如删除节点、查找节点等操作。
领取专属 10元无门槛券
手把手带您无忧上云