Golang melaksanakan senarai terpaut tunggal

王林
Lepaskan: 2023-05-13 09:59:06
asal
504 orang telah melayarinya

Senarai pautan tunggal ialah struktur data yang terdiri daripada satu siri nod, setiap nod mengandungi data dan penuding ke nod seterusnya. Penunjuk nod terakhir senarai terpaut tunggal adalah batal, menunjukkan penghujung senarai terpaut.

Di Golang, kita boleh menggunakan struktur untuk mentakrifkan setiap nod dan penunjuk untuk mewakili kedudukan nod seterusnya. Berikut ialah pelaksanaan senarai pautan tunggal yang mudah:

package main

import "fmt"

type Node struct {
    data int
    next *Node
}

type List struct {
    head *Node
}

func (l *List) Insert(val int) {
    newNode := &Node{data: val}

    if l.head == nil {
        l.head = newNode
    } else {
        last := l.Last()
        last.next = newNode
    }
}

func (l *List) Last() *Node {
    node := l.head

    for node.next != nil {
        node = node.next
    }

    return node
}

func (l *List) Traverse() {
    node := l.head

    for node != nil {
        fmt.Printf("%d ", node.data)
        node = node.next
    }

    fmt.Printf("
")
}

func main() {
    l := List{}

    for i := 0; i < 10; i++ {
        l.Insert(i)
    }

    l.Traverse()
}
Salin selepas log masuk

Dalam pelaksanaan ini, kami mentakrifkan struktur Nod, yang mengandungi data dan penuding seterusnya yang menunjuk ke nod seterusnya. Struktur Senarai mewakili keseluruhan senarai terpaut dan mengandungi penuding kepala yang menunjuk ke nod pertama.

Kaedah Sisip digunakan untuk memasukkan nilai ke dalam senarai terpaut. Jika senarai terpaut kosong, tetapkan nod baharu sebagai kepala jika tidak, cari nod terakhir dan arahkan penunjuk seterusnya ke nod baharu.

Kaedah terakhir mengembalikan nod terakhir senarai terpaut. Bermula dari kepala, lalui keseluruhan senarai terpaut sehingga nod terakhir ditemui.

Kaedah Traverse digunakan untuk melintasi keseluruhan senarai terpaut dan mengeluarkan semua elemen dalam senarai terpaut.

Dalam fungsi utama, kami mencipta contoh Senarai, memasukkan nilai ke dalamnya dan melintasi keseluruhan senarai terpaut untuk mengeluarkan keputusan.

Pelaksanaan di atas hanyalah contoh mudah dan boleh dipanjangkan dan diubah suai mengikut keperluan anda sendiri. Perlu diingat bahawa dalam pembangunan sebenar, semasa menulis senarai terpaut, kita perlu memberi perhatian kepada isu seperti kebocoran memori dan pertimbangan nilai nol penunjuk untuk memastikan keteguhan dan kecekapan kod.

Atas ialah kandungan terperinci Golang melaksanakan senarai terpaut tunggal. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!