package main

import "fmt"

//type LinkedNode struct {
//	val interface{}
//	next *LinkedNode
//}
//
//func NewLinkedNode(val interface{}) *LinkedNode {
//	return &LinkedNode{
//		val:val,
//	}
//}
//
//func main() {
//	node := NewLinkedNode("aaa")
//	node2 := NewLinkedNode("bbb")
//	node.next = node2
//	node3 := NewLinkedNode("ccc")
//	node2.next = node3
//	for ; node != nil; node = node.next {
//		fmt.Println(node)
//	}
//}

type LinkedNode struct {
	val interface{}
	pre *LinkedNode
	next *LinkedNode
}

func NewLinkedNode(val interface{}) *LinkedNode {
	return &LinkedNode{
		val:val,
	}
}

func main() {
	node := NewLinkedNode("aaa")
	node2 := NewLinkedNode("bbb")
	node.next = node2
	node2.pre = node
	node3 := NewLinkedNode("ccc")
	node2.next = node3
	node3.pre = node2
	temp := node
	for ; temp != nil; temp = temp.next {
		fmt.Println(temp)
		if temp.next == nil {
			break
		}
	}
	fmt.Println("-------------------")
	for ; temp != nil; temp = temp.pre {
		fmt.Println(temp)
	}
}

相关文章:

  • 2022-12-23
  • 2021-07-05
  • 2021-10-11
  • 2022-12-23
  • 2022-02-04
  • 2022-12-23
  • 2021-12-08
  • 2022-02-16
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-21
  • 2021-06-25
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案