使用场景:
使用方式:
接口文档:
几种容器的API方法都非常类似,特点是需要在初始化时提供用于排序的方法。
在gutil
模块中提供了常用的一些基本类型比较方法,可以直接在程序中直接使用,后续也有示例。
func ComparatorByte(a, b interface{}) int
func ComparatorFloat32(a, b interface{}) int
func ComparatorFloat64(a, b interface{}) int
func ComparatorInt(a, b interface{}) int
func ComparatorInt16(a, b interface{}) int
func ComparatorInt32(a, b interface{}) int
func ComparatorInt64(a, b interface{}) int
func ComparatorInt8(a, b interface{}) int
func ComparatorRune(a, b interface{}) int
func ComparatorString(a, b interface{}) int
func ComparatorTime(a, b interface{}) int
func ComparatorUint(a, b interface{}) int
func ComparatorUint16(a, b interface{}) int
func ComparatorUint32(a, b interface{}) int
func ComparatorUint64(a, b interface{}) int
func ComparatorUint8(a, b interface{}) int
基本使用
12
true
11
9
[0 1 2 3 4 5 6 7 8]
[0 10 20 30 40 50 60 70 80]
100
100
0:0 1:10 2:20 3:30 4:40 5:50 6:60 7:70 8:80
true
前序/后续遍历
执行后,输出结果为:
AVLTree
│ ┌── 9
│ ┌── 8
│ ┌── 7
│ │ │ ┌── 6
│ │ └── 5
│ │ └── 4
└── 3
│ ┌── 2
└── 1
└── 0
0 0
1 10
2 20
3 30
4 40
5 50
6 60
7 70
8 80
9 90
DESC:
9 90
8 80
7 70
6 60
5 50
4 40
3 30
2 20
1 10