Go 語言程式,用來計算雙向連結串列中的節點數。
示例

方法
步驟 1 − 定義一個接受雙向連結串列頭的方法。
步驟 2 − 初始化temp:=head, count:=0
步驟 3 − 迭代temp 直到它成為 nil。
步驟 4 − 將count 增加 1。
步驟 5 − 最後,列印count。
示例
package main
import "fmt"
type Node struct {
prev *Node
value int
next *Node
}
func CreateNewNode(value int) *Node{
var node Node
node.next = nil
node.value = value
node.prev = nil
return &node
}
func TraverseDoublyLL(head * Node){
// Forward Traversal
fmt.Printf("Doubly Linked List: ")
count := 0
temp := head
for temp!= nil{
fmt.Printf("%d ", temp.value)
temp = temp.next
count++
}
fmt.Printf("\nTotal number of nodes: %d", count)
}
func main(){
// 10 <−> 20 <−> 30 <−> 40
head := CreateNewNode(10)
node_2 := CreateNewNode(20)
node_3 := CreateNewNode(30)
node_4 := CreateNewNode(40)
head.next = node_2
node_2.prev = head
node_2.next = node_3
node_3.prev = node_2
node_3.next = node_4
node_4.prev = node_3
TraverseDoublyLL(head)
}輸出
Doubly Linked List: 10 20 30 40 Total number of nodes: 4
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP