From 5bb0f224483fbc1d57fd1c5a2f4a22dd7263ecd6 Mon Sep 17 00:00:00 2001 From: Andinus Date: Tue, 19 Jan 2021 18:20:23 +0530 Subject: Re-implement octans, move subroutines to respective modules MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Initially it went over the list of words & checked if they exist in the grid. This was very slow. Currently it walks the grid & checks if the current string exist in the dictionary. This is faster for these reasons: • The dictionary is sorted, we perform binary range search on the dictionary to return the list of all words that start with specific string. • Starting positions are limited. If the dictionary wasn't sorted then this probably would've been --- .gitignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 .gitignore (limited to '.gitignore') diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4a5e4c7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +lib/.precomp -- cgit 1.4.1-2-gfad0