Skip to content

Commit 4f2168b

Browse files
committed
fmt
1 parent f6e63ab commit 4f2168b

File tree

1 file changed

+17
-6
lines changed

1 file changed

+17
-6
lines changed

src/greedy/stable_matching.rs

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
use std::collections::{HashMap, VecDeque};
22

3-
fn initialize_men(men_preferences: &HashMap<String, Vec<String>>) -> (VecDeque<String>, HashMap<String, usize>) {
3+
fn initialize_men(
4+
men_preferences: &HashMap<String, Vec<String>>,
5+
) -> (VecDeque<String>, HashMap<String, usize>) {
46
let mut free_men = VecDeque::new();
57
let mut next_proposal = HashMap::new();
68

@@ -12,15 +14,19 @@ fn initialize_men(men_preferences: &HashMap<String, Vec<String>>) -> (VecDeque<S
1214
(free_men, next_proposal)
1315
}
1416

15-
fn initialize_women(women_preferences: &HashMap<String, Vec<String>>) -> HashMap<String, Option<String>> {
17+
fn initialize_women(
18+
women_preferences: &HashMap<String, Vec<String>>,
19+
) -> HashMap<String, Option<String>> {
1620
let mut current_partner = HashMap::new();
1721
for woman in women_preferences.keys() {
1822
current_partner.insert(woman.clone(), None);
1923
}
2024
current_partner
2125
}
2226

23-
fn precompute_woman_ranks(women_preferences: &HashMap<String, Vec<String>>) -> HashMap<String, HashMap<String, usize>> {
27+
fn precompute_woman_ranks(
28+
women_preferences: &HashMap<String, Vec<String>>,
29+
) -> HashMap<String, HashMap<String, usize>> {
2430
let mut woman_ranks = HashMap::new();
2531
for (woman, preferences) in women_preferences {
2632
let mut rank_map = HashMap::new();
@@ -51,7 +57,14 @@ fn process_proposal(
5157
if let Some(current_man) = current_partner[woman].clone() {
5258
// Woman is currently engaged, check if she prefers the new man
5359
if woman_prefers_new_man(woman, man, &current_man, woman_ranks) {
54-
engage_man(man, woman, free_men, current_partner, man_engaged, Some(current_man));
60+
engage_man(
61+
man,
62+
woman,
63+
free_men,
64+
current_partner,
65+
man_engaged,
66+
Some(current_man),
67+
);
5568
} else {
5669
// Woman rejects the proposal, so the man remains free
5770
free_men.push_back(man.to_string());
@@ -124,8 +137,6 @@ pub fn stable_matching(
124137
finalize_matches(man_engaged)
125138
}
126139

127-
128-
129140
#[cfg(test)]
130141
mod tests {
131142
use super::*;

0 commit comments

Comments
 (0)