* add Levinstein distance with Dynamic Programming: up -> down approach
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* add type hint
* fix flake8
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update dynamic_programming/min_distance_up_bottom.py
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update min_distance_up_bottom.py
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Christian Clauss <cclauss@me.com>
* Added Viterbi algorithm Fixes: #7465
Squashed commits
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Added doctest for validators
* moved all extracted functions to the main function
* Forgot a type hint
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Create combination_sum_iv.py
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update dynamic_programming/combination_sum_iv.py
Co-authored-by: Caeden Perelli-Harris <caedenperelliharris@gmail.com>
* Update dynamic_programming/combination_sum_iv.py
Co-authored-by: Caeden Perelli-Harris <caedenperelliharris@gmail.com>
* Update dynamic_programming/combination_sum_iv.py
Co-authored-by: Caeden Perelli-Harris <caedenperelliharris@gmail.com>
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update combination_sum_iv.py
* Update combination_sum_iv.py
* Resolved PR Comments
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* minor change, argument missing in function
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update dynamic_programming/combination_sum_iv.py
Co-authored-by: Christian Clauss <cclauss@me.com>
* minor change
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Caeden Perelli-Harris <caedenperelliharris@gmail.com>
Co-authored-by: Christian Clauss <cclauss@me.com>
* Adopt Python >= 3.8 assignment expressions using auto-walrus
* updating DIRECTORY.md
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Create minimums_squares_to_represent_a_number.py
added a dynamic programming approach of finding the minimum number of square to represent a number.
eg :
25 = 5*5
37 = 6*6 + 1*1
21 = 4*4 + 2*2 + 1*1
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update and rename minimums_squares_to_represent_a_number.py to minimum_squares_to_represent_a_number.py
updated the code
* Update minimum_squares_to_represent_a_number.py
I have added the appropriate checks for 0 and 12.34.
It would be great if you could suggest a name for the dp array
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update minimum_squares_to_represent_a_number.py
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update minimum_squares_to_represent_a_number.py
updated
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update minimum_squares_to_represent_a_number.py
updated
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Update knapsack.py
* Update dynamic_programming/knapsack.py
Co-authored-by: Christian Clauss <cclauss@me.com>
* Update knapsack.py
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
Co-authored-by: Christian Clauss <cclauss@me.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* ci: Add ``flake8-pep3101`` plugin to ``pre-commit``
* refactor: Remove all modulo string formatting
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* refactor: Remove ``flake8-pep3101`` plugin from ``pre-commit``
* revert: Revert to modulo formatting
* refactor: Use f-string instead of `join`
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Add all_construct dynamic programming implementation
* all_construct: remove the main function
* all_construct: Add type hints
* all_construct: changed map to list comprehension,fix mutable default arguments
* all_construct: fixed type hints
* all_construct: cleaner code for initializing word_bank argument
* all_construct: added an import for annotations
* all_construct: added None in the argument with word_bank
* all_construct: fixed a type hint
* all_construct: Fixed some more type hints
* Removed doctest call
* Removed 0 and 1 append to `fib_array`
* Moved fibonacci sequence logic into `calculate`
* Refactored `get` to generate missing numbers
* Renamed `fib_array` to `sequence`
* Renamed `number` to `index`
* Refactored `get` to only return sequence to `index`
* Moved main block into function
* Added documentation to `get`
* Added missing type hints
* Fixed doctest error in `get` docstring
* Moved calculate logic into get
* Reformatted with black
* Fixed wrong generation range
* Implemented minimum steps to one using tabulation.
* Update minimum_steps_to_one.py
Made the parameter "n" more descriptive. Changed it to number
* `n` to `number`
Co-authored-by: John Law <johnlaw.po@gmail.com>
* black format
* updating DIRECTORY.md
* fixes
* fixup! Format Python code with psf/black push
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* Euler problem 551 sol 1: Reduce McCabe code complexity
As discussed in #2128
* fixup! Format Python code with psf/black push
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* Added maximum non-adjacent sum
* Bugfix: flake8 test
* Implemented changes (broke tuple unpacking into 2 lines due to flake8 tests)
* Implemented changes v2.0
* Update max_non_adjacent_sum.py
Co-authored-by: Christian Clauss <cclauss@me.com>
* Tighten up psf/black and flake8
* Fix some tests
* Fix some E741
* Fix some E741
* updating DIRECTORY.md
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* spelling corrections
* review
* improved documentation, removed redundant variables, added testing
* added type hint
* camel case to snake case
* spelling fix
* review
* python --> Python # it is a brand name, not a snake
* explicit cast to int
* spaces in int list
* "!= None" to "is not None"
* Update comb_sort.py
* various spelling corrections in documentation & several variables naming conventions fix
* + char in file name
* import dependency - bug fix
Co-authored-by: John Law <johnlaw.po@gmail.com>
* Travis CI: Upgrade to Python 3.8
* updating DIRECTORY.md
* Tensorflow is not yet compatible with Python 3.8
* Disable k_means_clustering_tensorflow.py
* updating DIRECTORY.md
* Disable gan.py
* updating DIRECTORY.md
* Disable input_data.py
* updating DIRECTORY.md
* pip install a current version of six