slice
XuAPI
pub fn slice#T:Ord(a &mut []T)用途
按 Ord.less 原地排序。
参数
a&mut []T- 要处理的切片(独占借用;类型 &mut []T)
API
#sortints/f64s/strings introsort;slice / slice_func 按 Ord 或回调。
slicepub fn slice#T:Ord(a &mut []T)按 Ord.less 原地排序。
a &mut []Tintspub fn ints(a &mut []int)原地升序排序。
a &mut []intstringspub fn strings(a &mut []string)原地升序排序。
a &mut []stringf64spub fn f64s(a &mut []f64)原地升序排序。
a &mut []f64slice_funcpub fn slice_func#T(a &mut []T, less fn(T, T) bool)按 less 回调原地排序。
a &mut []Tless fn(T, T) boolstruct Searchpub struct Search {
pub index int
pub found bool
}公开结构体 `Search`。
index intfound boollookup_intspub fn lookup_ints(a &[]int, v int) Search查找int 切片。
a &[]intv intSearch — 该类型的值
lookup_stringspub fn lookup_strings(a &[]string, v string) Search查找string 切片。
a &[]stringv stringSearch — 该类型的值
lookup_f64spub fn lookup_f64s(a &[]f64, v f64) Search查找f64 切片。
a &[]f64v f64Search — 该类型的值
search_intspub fn search_ints(a &[]int, v int) int在已排序切片中二分查找。
a &[]intv intint — 已排序切片中的下标(未命中则为插入点)
search_stringspub fn search_strings(a &[]string, v string) int在已排序切片中二分查找。
a &[]stringv stringint — 已排序切片中的下标(未命中则为插入点)
search_f64spub fn search_f64s(a &[]f64, v f64) int在已排序切片中二分查找。
a &[]f64v f64int — 已排序切片中的下标(未命中则为插入点)
is_sorted_intspub fn is_sorted_ints(a &[]int) bool是否已按升序排好。
a &[]intbool — 是否成立
is_sorted_stringspub fn is_sorted_strings(a &[]string) bool是否已按升序排好。
a &[]stringbool — 是否成立
is_sorted_f64spub fn is_sorted_f64s(a &[]f64) bool是否已按升序排好。
a &[]f64bool — 是否成立
reverse_intspub fn reverse_ints(a &mut []int)原地降序排序(先升序再翻转)。
a &mut []intreverse_stringspub fn reverse_strings(a &mut []string)原地降序排序(先升序再翻转)。
a &mut []stringreverse_f64spub fn reverse_f64s(a &mut []f64)原地降序排序(先升序再翻转)。
a &mut []f64