golang-infrastructure / go-heap-sort

Heap Sort 堆排序

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

堆排序(Heap Sort)

一、安装

go get -u github.com/golang-infrastructure/go-heap-sort

二、示例代码

package main

import (
	"fmt"
	heap_sort "github.com/golang-infrastructure/go-heap-sort"
)

func main() {

	slice := []int{100, 2, 1, 10}
	heap_sort.Sort(slice)
	fmt.Println(slice)
	// Output:
	// [1 2 10 100]

}

三、API

对元素类型为可比较类型的切片进行正序排序

func Sort[T gtypes.Ordered](slice []T)

对元素类型为可比较类型的切片进行逆向排序

func ReverseSort[T gtypes.Ordered](slice []T) 

使用自定义的比较器对切片进行排序,如果需要逆序可以自行控制比较器的比较规则

func SortByComparator[T any](slice []T, comparator compare_anything.Comparator[T])

About

Heap Sort 堆排序

License:MIT License


Languages

Language:Go 100.0%