From 440738b29dc913f3562c225fc22cf71bde6b8a75 Mon Sep 17 00:00:00 2001 From: Alexander Corwin Date: Sun, 21 Apr 2019 20:12:12 -0700 Subject: [PATCH] sorting unstably --- Cargo.toml | 1 + src/life.rs | 3 ++- src/mind.rs | 10 +++++----- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 68f0a76..74ccac0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -20,3 +20,4 @@ opt-level = 2 [profile.release] lto = true +debug = true diff --git a/src/life.rs b/src/life.rs index 090684e..e9a1232 100644 --- a/src/life.rs +++ b/src/life.rs @@ -411,7 +411,8 @@ impl WorldState { let mut rank = 7; let mut file = 0; let mut world = WorldState::new_except_empty(); - let mut volumes = scan.split(' '); + let replaced = scan.replace("X", " "); + let mut volumes = replaced.split(' '); let positional_scan = volumes.next(); for rune in positional_scan.unwrap().chars() { match rune { diff --git a/src/mind.rs b/src/mind.rs index 6a063d4..d4155a5 100644 --- a/src/mind.rs +++ b/src/mind.rs @@ -153,16 +153,16 @@ fn mmv_lva_heuristic(commit: &Commit) -> f32 { } fn order_movements_heuristically(commits: &mut Vec) { - commits.sort_by(|a, b| { + commits.sort_unstable_by(|a, b| { mmv_lva_heuristic(b) .partial_cmp(&mmv_lva_heuristic(a)) .unwrap_or(Ordering::Equal) }); } -fn order_movements_intuitively(experience: &HashMap, - commits: &mut Vec) { - commits.sort_by(|a, b| { +fn order_movements_intuitively( + experience: &HashMap, commits: &mut Vec) { + commits.sort_unstable_by(|a, b| { let a_feels = experience.get(&a.patch); let b_feels = experience.get(&b.patch); b_feels.cmp(&a_feels) @@ -380,7 +380,7 @@ pub fn potentially_timebound_kickoff( debug!("waiting for {} of {} first-movement search threads", time_radios.len(), premonitions.len()) } - forecasts.sort_by(|a, b| b.1.partial_cmp(&a.1).unwrap_or(Ordering::Equal)); + forecasts.sort_unstable_by(|a, b| b.1.partial_cmp(&a.1).unwrap_or(Ordering::Equal)); Some(forecasts) }