diff options
| author | mo <mokha@cisco.com> | 2017-08-12 14:04:14 -0600 |
|---|---|---|
| committer | mo <mokha@cisco.com> | 2017-08-12 14:04:14 -0600 |
| commit | 844b2e9659f755c046ddefd7be61975eb217fe4e (patch) | |
| tree | e402cfbbd99773b8ac6231dd79df18f2a21e22e1 | |
| parent | 056fd97445d8962f893b3ac87ef6294a1ea2c952 (diff) | |
remove unneccessary variable.
| -rw-r--r-- | spec/binary_trees/find_substrings_spec.rb | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/spec/binary_trees/find_substrings_spec.rb b/spec/binary_trees/find_substrings_spec.rb index 5ce8622..77b6350 100644 --- a/spec/binary_trees/find_substrings_spec.rb +++ b/spec/binary_trees/find_substrings_spec.rb @@ -78,28 +78,21 @@ describe "#find_substrings" do def find_substrings(words, parts) return words if parts.empty? + parts_hash = parts.map { |x| [x, x] }.to_h sorted = parts_hash.keys.sort_by(&:length) max = sorted.last.size min = sorted.first.size - #puts [min, max, parts_hash].inspect words.map do |word| match = nil - match_index = nil length = nil + 0.upto(word.size - 1) do |n| max.downto(min) do |m| - x = word[n...n+m] - #puts x.inspect - - if part = parts_hash[x] - #puts "FOUND: #{x} in #{word}" - if match.nil? || part.length > length || (part.length == length && n < match_index) - match = part - match_index = n - length = part.length - end + if (part = parts_hash[word[n...n+m]]) && (match.nil? || part.length > length) + match = part + length = part.length end end end @@ -170,10 +163,7 @@ l e { words: ["during"], parts: ["d", "g", "i"], x: ["[d]uring"] }, ].each do |x| it do - #result = with_profiler do - result = find_substrings(x[:words], x[:parts]) - #end - + result = find_substrings(x[:words], x[:parts]) expect(result).to eql(x[:x]) end end |
