【发布时间】:2016-11-03 17:58:41
【问题描述】:
我正在根据两个标准对向量进行排序。第一个是一个浮点数,可以是NaN,第二个是一个字符串,用于按字典顺序打断。
vec.sort_by(|a, b| {
match (foo(a) as f64 / bar(a) as f64).partial_cmp(&(foo(b) as f64 / bar(b) as f64)) {
Some(x) => {
Ordering::Equal => name(a).cmp(name(b)),
other => other,
}
None() => {
//Not sure what to put here.
}
}
}
foo(a) 返回 int > 0,
bar(a) 返回 int >= 0,
name(a) 返回& String。
如何对NaN 进行排序,使其大于任何其他数字,并等于任何其他NaN(字典式决胜局)?
【问题讨论】:
标签: sorting floating-point rust