SHA256
more readable
This commit is contained in:
@@ -64,12 +64,11 @@ fn find_min(cache: &mut HashMap<u64, u64>, target_sum: u64, coins: &Vec<u64>) ->
|
||||
|
||||
if running_min != u64::MAX {
|
||||
cache.insert(target_sum, running_min);
|
||||
Some(running_min)
|
||||
return Some(running_min);
|
||||
} else {
|
||||
cache.insert(target_sum, u64::MAX); // Mark as unreachable
|
||||
None
|
||||
return None;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Essentially, the purpose of the above code is to traverse a tree of possible coin decisions. As long as the coin denomination is smaller than the target, it's possible to recursively iterate through all combinations of coins while both caching and checking for a base case. This behavior is called memorization. The base case for any branch of the tree is when the target sum is equivalent to the coin of interest.
|
||||
|
||||
+2
-2
@@ -42,10 +42,10 @@ fn find_min(cache: &mut HashMap<u64, u64>, target_sum: u64, coins: &Vec<u64>) ->
|
||||
|
||||
if running_min != u64::MAX {
|
||||
cache.insert(target_sum, running_min);
|
||||
Some(running_min)
|
||||
return Some(running_min);
|
||||
} else {
|
||||
cache.insert(target_sum, u64::MAX); // Mark as unreachable
|
||||
None
|
||||
return None;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user