// Copyright 2017 The Go Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package sortimport ()// Slice sorts the slice x given the provided less function.// It panics if x is not a slice.//// The sort is not guaranteed to be stable: equal elements// may be reversed from their original order.// For a stable sort, use SliceStable.//// The less function must satisfy the same requirements as// the Interface type's Less method.func ( any, func(, int) bool) { := reflectlite.ValueOf() := reflectlite.Swapper() := .Len() := bits.Len(uint())pdqsort_func(lessSwap{, }, 0, , )}// SliceStable sorts the slice x using the provided less// function, keeping equal elements in their original order.// It panics if x is not a slice.//// The less function must satisfy the same requirements as// the Interface type's Less method.func ( any, func(, int) bool) { := reflectlite.ValueOf() := reflectlite.Swapper()stable_func(lessSwap{, }, .Len())}// SliceIsSorted reports whether the slice x is sorted according to the provided less function.// It panics if x is not a slice.func ( any, func(, int) bool) bool { := reflectlite.ValueOf() := .Len()for := - 1; > 0; -- {if (, -1) {returnfalse } }returntrue}
The pages are generated with Goldsv0.6.7. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds.