Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie eine verknüpfte Liste in Golang

So implementieren Sie eine verknüpfte Liste in Golang

小老鼠
小老鼠Original
2023-12-14 16:37:311127Durchsuche

So implementieren Sie eine verknüpfte Liste: 1. Definieren Sie eine Knotenstruktur, um die Knoten der verknüpften Liste darzustellen. Jeder Knoten enthält ein Datenelement und einen Zeiger auf den nächsten Knoten. 2. Definieren Sie eine LinkedList-Struktur, um die verknüpfte Liste selbst darzustellen . , das einen Zeiger auf den Kopfknoten der verknüpften Liste enthält. 3. Es werden zwei Methoden implementiert: append wird verwendet, um einen Knoten am Ende der verknüpften Liste einzufügen, und printList wird verwendet, um die Elemente der verknüpften Liste zu drucken. 4. Auf diese Weise können die Struktur der Go-Sprache und Zeiger verwendet werden, um die Grundfunktionen verknüpfter Listen zu implementieren.

So implementieren Sie eine verknüpfte Liste in Golang

Das Betriebssystem dieses Tutorials: Windows 10-System, go1.20.1-Version, Dell G3-Computer.

In der Go-Sprache können Strukturen und Zeiger verwendet werden, um verknüpfte Listen zu implementieren. Das Folgende ist ein einfaches Beispiel, das zeigt, wie eine einfache einseitig verknüpfte Liste in der Go-Sprache implementiert wird:

package main
import "fmt"
// 定义链表节点
type Node struct {
    data int
    next *Node
}
// 定义链表
type LinkedList struct {
    head *Node
}
// 在链表末尾插入节点
func (list *LinkedList) append(data int) {
    newNode := &Node{data: data, next: nil}
    if list.head == nil {
        list.head = newNode
        return
    }
    lastNode := list.head
    for lastNode.next != nil {
        lastNode = lastNode.next
    }
    lastNode.next = newNode
}
// 打印链表元素
func (list *LinkedList) printList() {
    currentNode := list.head
    for currentNode != nil {
        fmt.Printf("%d -> ", currentNode.data)
        currentNode = currentNode.next
    }
    fmt.Println("nil")
}
func main() {
    // 创建链表
    var list LinkedList
    list.append(1)
    list.append(2)
    list.append(3)
    // 打印链表
    list.printList()
}

Im obigen Beispiel definieren wir zunächst eine Knotenstruktur, um die Knoten der verknüpften Liste darzustellen. Jeder Knoten enthält ein The Datenelement und ein Zeiger auf den nächsten Knoten. Anschließend definieren wir eine LinkedList-Struktur zur Darstellung der verknüpften Liste selbst, die einen Zeiger auf den Kopfknoten der verknüpften Liste enthält. Wir haben zwei Methoden implementiert: append wird zum Einfügen von Knoten am Ende der verknüpften Liste verwendet und printList wird zum Drucken der Elemente der verknüpften Liste verwendet.

Auf diese Weise können wir Go-Sprachstrukturen und -Zeiger verwenden, um die Grundfunktionen verknüpfter Listen zu implementieren. Dies ist natürlich nur ein einfaches Beispiel, und tatsächliche verknüpfte Listen können komplexer sein, z. B. doppelt verknüpfte Listen, zirkulär verknüpfte Listen usw.

Das obige ist der detaillierte Inhalt vonSo implementieren Sie eine verknüpfte Liste in Golang. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn