* add integer to roman function
simply added fastest method i found.
* Rename roman_to_integer.py to roman_numerals.py
* Update roman_numerals.py
* Update roman_numerals.py
Co-authored-by: Christian Clauss <cclauss@me.com>
* fixed shell sort
* udpate code style
* Update sorts/shell_sort.py
Co-authored-by: John Law <johnlaw.po@gmail.com>
Co-authored-by: John Law <johnlaw.po@gmail.com>
* Added solution for Project Euler problem 59
* updating DIRECTORY.md
* Formatting, type hints, no more evil map functions
* Doctests
* Added doctests for Project Euler problem 59
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* Initial commit of the conjugate gradient method
* Update linear_algebra/src/conjugate_gradient.py
* Added documentation links, changed variable names to lower case and more descriptive naming, added check for symmetry in _is_matrix_spd
* Made changes to some variable naming to be more clear
* Update conjugate_gradient.py
Co-authored-by: Zeyad Zaky <zeyadzaky@Zeyads-MacBook-Pro.local>
Co-authored-by: Christian Clauss <cclauss@me.com>
Co-authored-by: Dhruv Manilawala <dhruvmanila@gmail.com>
* Added solution for Project Euler problem 085.
* updating DIRECTORY.md
* Minor tweaks to Project Euler problem 85
* Variable comments for project euler problem 85
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* Chore: Added type hints to searches/binary_search.py
* Use -1 as the sentinal value
* Wrap long lines
* Update binary_search.py
* Update binary_search.py
Co-authored-by: Christian Clauss <cclauss@me.com>
* Added solution for Project Euler problem 180
* Fixed minor details in Project Euler problem 180
* updating DIRECTORY.md
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* 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>
* Update validate solution script to fetch only submitted solution
* Update workflow file with the updated PE script
* Fix: do not fetch `validate_solutions.py` script
* Update script to use the requests package for API calls
* Fix: install requests module
* Pytest ignore scripts/ directory
* Added static typing to backtracking algorithms
* Ran psf/black to fix some minor issues.
* updating DIRECTORY.md
* updating DIRECTORY.md
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
Co-authored-by: John Law <johnlaw.po@gmail.com>
* Created conways_game_of_life.py
* Added new_generation(list[int[int]]) -> list[list[int]]
* Added glider example
* Added comments and shortened glider example
* Fixed index out of bounds error
* Added test
* Added blinker example
* Added ability to generate images
* Moved image generating code into a separate function
* Added comments
* Comment
* Reformatted file
* Formatting
* Removed glider test
* Update cellular_automata/conways_game_of_life.py
Co-authored-by: John Law <johnlaw.po@gmail.com>
* Update conways_game_of_life.py
* Update conways_game_of_life.py
Co-authored-by: John Law <johnlaw.po@gmail.com>
* Added solution for Project Euler problem 77.
* Update docstrings, doctest, type annotations and 0-padding in directory name. Reference: #3256
* Implemented lru_cache, better type hints, more doctests for problem 77
* updating DIRECTORY.md
* updating DIRECTORY.md
* Added solution for Project Euler problem 77. Fixes: 2695
* Update docstrings, doctest, type annotations and 0-padding in directory name. Reference: #3256
* Implemented lru_cache, better type hints, more doctests for problem 77
* better variable names
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* rename base64_cipher.py to base64_encoding.py
* edit base64_encoding.py
* import necessary modules inside doctests
* make it behave like the official implementation
* replace format with f-string where possible
* replace format with f-string
Co-authored-by: Christian Clauss <cclauss@me.com>
* fix: syntax error due to closing parenthese
* reformat code
Co-authored-by: Christian Clauss <cclauss@me.com>
* New algorithm added
* Errors resolvedc
* New Algorithm
* New algorithm added
* Added new algorithm
* work
* New algorithm added
* Hope this is final
* Update electronics/ohms_law.py
Co-authored-by: xcodz-dot <71920621+xcodz-dot@users.noreply.github.com>
* update decimal value & negative value test
* update as cclauss suggest
* Update electronics/ohms_law.py
Co-authored-by: Christian Clauss <cclauss@me.com>
* updated as suggested by cclauss
* update as suggested by cclauss
* Update as suggested by cclauss
* Update ohms_law.py
Co-authored-by: xcodz-dot <71920621+xcodz-dot@users.noreply.github.com>
Co-authored-by: Christian Clauss <cclauss@me.com>
* fixes#3944 authentication error
* Fixes: #3944 authentication error
* Fixed docstring failure in pre-commit, Fixed request.get params to GitHub REST API standards
* run black formatter
* Add USER_TOKEN constant and checks if empty, removes deprecated docstring
* Add descriptive dict type hint, change headers format to f-string
* Add Accept header
* Fix pre-commit error
* Fix pre-commit error
* Add test for fetch_github_info
* Remove test function from main file
* Create test_fetch_github_info.py
* Update test_fetch_github_info.py
* Update test_fetch_github_info.py
* No need to cover __name__ == __main__ block
Co-authored-by: Dhruv Manilawala <dhruvmanila@gmail.com>
Updated the code to track visited Nodes with Set data structure instead of Lists to bring down the lookup time in visited from O(N) to O(1)
as doing O(N) lookup each time in the visited List will become significantly slow when the graph grows
* add solution for euler problem 89
* updates to accommodate euler solution guideline updates
* use more descriptive vars
* updating DIRECTORY.md
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* Added solution for Project Euler problem 129.
* Added doctest for solution() in project_euler/problem_129/sol1.py
* Update formatting. Reference: #3256
* More descriptive function and variable names, more doctests.