So verwenden Sie eine Liste, um eine Summenoperation in Golang zu implementieren

PHPz
Freigeben: 2023-04-06 11:05:00
Original
798 Leute haben es durchsucht

Golang ist eine effiziente Programmiersprache mit leistungsstarken integrierten Funktionen und Datenstrukturen, darunter Listen. In Golang ist eine Liste eine doppelt verknüpfte Liste, mit der viele Probleme gelöst werden können, z. B. Algorithmen und Datenstrukturprobleme im Zusammenhang mit verknüpften Listen. In diesem Artikel wird erläutert, wie Listen zum Implementieren von Summenoperationen verwendet werden.

Zuerst müssen Sie eine Listentypvariable definieren und einige Knoten hinzufügen. Hier erstellen wir zunächst eine Listenstruktur:

type ListNode struct {
  Val  int
  Next *ListNode
}
Nach dem Login kopieren

Als nächstes können wir diese Struktur verwenden, um eine Liste zu definieren:

//创建链表
list := ListNode{0, nil}
node1 := &ListNode{1, nil}
node2 := &ListNode{2, nil}
node3 := &ListNode{3, nil}
list.Next = node1
node1.Next = node2
node2.Next = node3
Nach dem Login kopieren

Jetzt können wir mit der Implementierung der Listensummenoperation beginnen. Bei einer verknüpften Liste erfolgt die Summierung durch Addition der Werte aller Knoten. Der Code lautet wie folgt:

//求和
sum := 0
for p := list; p != nil; p = p.Next {
  sum += p.Val
}
fmt.Println(sum)
Nach dem Login kopieren

Die Bedeutung dieses Codes besteht darin, vom Kopfknoten der verknüpften Liste auszugehen, alle Knoten zu durchlaufen und den Wert des Knotens in der Summenvariablen zu akkumulieren. Schließlich ist der Wert der Ausgabesumme die Summe der verknüpften Liste.

Zusätzlich zum Durchlaufen der Summation können wir auch Rekursion verwenden, um Summationsoperationen zu implementieren. Bei einer verknüpften Liste erfolgt die rekursive Summierung durch Addition des Werts des aktuellen Knotens zur Summe der nachfolgenden Knoten. Der Code lautet wie folgt:

//递归求和
func sumList(list *ListNode) int {
  if list == nil {
    return 0
  }
  return list.Val + sumList(list.Next)
}
Nach dem Login kopieren

Dieser Code bedeutet, dass, wenn der aktuelle Knoten leer ist, 0 zurückgegeben wird; andernfalls wird der Wert des aktuellen Knotens zur Summe der nachfolgenden Knoten addiert und das Ergebnis zurückgegeben.

Zusammenfassend lässt sich sagen, dass die Liste in Golang eine sehr nützliche Datenstruktur ist, mit der viele Probleme gelöst werden können. In diesem Artikel haben wir vorgestellt, wie Listen zum Implementieren von Summationsoperationen verwendet werden, einschließlich Traversal-Summation und rekursiver Summation. Ich hoffe, dass dieser Artikel den Lesern helfen kann, Listen in Golang besser zu verstehen und zu verwenden.

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

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!