From 2fb94e3c4c4ade042fc1944f1bfa64609bff40b4 Mon Sep 17 00:00:00 2001 From: "Kartik K. Agaram" Date: Fri, 24 Apr 2015 17:09:17 -0700 Subject: 1166 Why did I think STL's map wasn't efficient? It has logarithmic complexity (maintains a tree internally) and is faster than hashing for small containers. It's the more portable solution and should be what I turn to by default. --- cpp/041name | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'cpp/041name') diff --git a/cpp/041name b/cpp/041name index 071f6f5a..6afb6b07 100644 --- a/cpp/041name +++ b/cpp/041name @@ -21,7 +21,7 @@ recipe main [ Transform.push_back(transform_names); :(before "End Globals") -unordered_map > Name; +map > Name; :(after "Clear Other State For recently_added_recipes") for (size_t i = 0; i < recently_added_recipes.size(); ++i) { Name.erase(recently_added_recipes[i]); @@ -29,7 +29,7 @@ for (size_t i = 0; i < recently_added_recipes.size(); ++i) { :(code) void transform_names(const recipe_number r) { - unordered_map& names = Name[r]; + map& names = Name[r]; int curr_idx = 1; //? cout << "Recipe " << r << '\n'; //? 2 //? cout << Recipe[r].steps.size(); //? 1 @@ -77,7 +77,7 @@ void transform_names(const recipe_number r) { } } -bool already_transformed(const reagent& r, const unordered_map& names) { +bool already_transformed(const reagent& r, const map& names) { return names.find(r.name) != names.end(); } -- cgit 1.4.1-2-gfad0