Commit Graph

2421 Commits

Author SHA1 Message Date
Naveen M V
748702b461
Add Monte Carlo dice simulation algorithm ()
* Implement basic dice simulation

* Add tests to throw_dice

* Fix comment

* Add type hints

* Add additional comments

* Update monte_carlo_dice.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-02-17 10:55:04 +01:00
eightysixth
2e405f397b
Created geodesy section with one algorithm ()
* implemented haversine

* updated docstring

Only calculate distance

* added type hints

* added type hints

* improved docstring and math usage

* f"{haversine_distance(*SAN_FRANCISCO, *YOSEMITE):0,.0f} meters"

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-02-16 10:55:27 +01:00
QuantumNovice
53042f0f45
Create RayleighQuotient.py ()
* Create RayleighQuotient.py

https://en.wikipedia.org/wiki/Rayleigh_quotient

* Update RayleighQuotient.py

* Update and rename RayleighQuotient.py to rayleigh_quotient.py

* Update rayleigh_quotient.py

* Update rayleigh_quotient.py

python/black

* Update rayleigh_quotient.py
2020-02-14 12:56:56 +01:00
onlinejudge95
4866b1330b
Fixes black failures from Previous PR ()
* Fixes black failures from Previous PR

* Fixes equality testing alert

* Fixes call to main() alert

* Fixes unused import
2020-02-13 02:19:41 +05:30
TheSuperNoob
f0dfc4f46d
Add Chudnovskys algorithm for calculating many digits of pi ()
* Add Chudnovskys algorithm for calculating many digits of pi

* Update return value type hint

* Initialize partial sum to be of type Decimal

* Update chudnovsky_algorithm.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-02-12 15:04:59 +01:00
onlinejudge95
7b7c1a0135
Fixes unused variable errors in LGTM ()
* Fixes unsed variable errors in LGTM

* Fixes integer check

* Fixes failing tests
2020-02-11 13:59:09 +05:30
billpaps
fde31c93a3
Added Bisection algorithm ()
* Create Bisection.py

Find root of

* Update Bisection.py

* Update Bisection.py

i changed the given function with one that i could make the doctests.

* Rename Bisection.py to bisection.py

* Update bisection.py

* Update bisection.py

* Update bisection.py

* Update bisection.py

* Update bisection.py

Made the changes that were requested

* Update bisection.py

* Update bisection.py

* Add wiki url

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-02-11 09:20:24 +01:00
Jimmy Y
1096aa2336
Added DP Solution for Optimal BST Problem ()
* Added code to dynamic_programming directory

* Added doctest

* Elaborated BST

* Small tweaks

* Update optimal_bst.py

* Some touchups

* Fixed doctest

* Update optimal_bst.py

* Update optimal_bst.py

* Update optimal_bst.py

* Rename optimal_bst.py to optimal_binary_search_tree.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-02-11 05:53:26 +01:00
ayoub-edh
abd320052f
Add gitpod config ()
* Add gitpod config

* Add Gitpod to icon bar
2020-02-10 22:26:59 +01:00
onlinejudge95
6fdd53c676
Fixes LGTM issues ()
* Fixes redefinition of a variable

* Fixes implementing __eq__

* Updates docstring
2020-02-10 22:23:19 +01:00
onlinejudge95
80718bd880 Fixes black failures () 2020-02-10 11:43:57 +01:00
MatteoRaso
32ceec550f
Added a Monte Carlo simulation ()
* Added montecarlo.py

This algorithm uses a Monte Carlo simulation to estimate the value of pi.

* Rename montecarlo.py to maths/montecarlo.py

* Add files via upload

* Delete montecarlo.py

* Rename montecarlo.py to maths/montecarlo.py

* Update montecarlo.py
2020-02-09 02:17:11 +05:30
Christian Clauss
670f952aa6
Travis CI: Don’t allow bare exceptions ()
* Travis CI: Don’t allow bare exceptions

* fixup! Format Python code with psf/black push

* except IOError:

* except IOError:

* Update hamming_code.py

* IndexError

* Get rid of the nonsense logic

Co-authored-by: John Law <johnlaw.po@gmail.com>
2020-02-07 22:02:08 +02:00
Miggelito
f52b97f2c5
Added Random Forest Regressor and tested with flake8 ()
* Added Random Forest Regressor

* Updated file to standard
2020-02-08 00:07:14 +05:30
TheSuperNoob
1608d75351
Improve collatz_sequence algorithm ()
- Add more doctests and type checking to make sure only natural
  numbers are used

- Simplified the algorithm slightly
	This new verison is also between 10-15% faster for really
	long sequences
2020-02-07 02:30:08 +05:30
Ale3androsS
e7041a8eca
Added first come first served scheduling ()
* Added FCFS

* Fixed spelling error

* Rename fcfs.py to first_come_first_served.py

* Fixed FCFS and added tests.

* Made changes requested

* Use enumerate() instead of range(len())

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-02-06 21:48:58 +02:00
faizan2700
dacf1d0375
Implement Manacher's algorithm ()
* manacher's algorithm updated
2020-02-05 19:27:42 +08:00
tania-cmyk
74a7b5f799
relevant documentation added () 2020-02-03 14:30:58 +05:30
cschuerc
81f077adfc Augment binary search algorithms () 2020-01-28 22:33:59 +05:30
Christian Clauss
bef74d0ecc Fix typo ()
* Fix typo

* updating DIRECTORY.md
2020-01-28 05:09:47 +08:00
onlinejudge95
5c7d7782b0 Mandates referencing issue in PR ()
* Mandates referencing issue in PR

* Update CONTRIBUTING.md

* Update pull_request_template.md

* Update pull_request_template.md

* Update pull_request_template.md

* Update CONTRIBUTING.md

Co-authored-by: John Law <johnlaw.po@gmail.com>
Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-27 21:54:57 +01:00
Faraz Ahmed Khan
63a1c4171a Added implementation for Bezier Curve, under a new graphics directory. ()
* Added bezier curve

* black formatted

* corrected spell check

* edited scipy import

* updated documentation for readablitity

* Update bezier_curve.py

* Update bezier_curve.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-25 07:18:43 +01:00
Christian Clauss
46ac50a28e codespell --quiet-level=2 ()
* codespell --quiet-level=2

Suppress the BINARY FILE warnings

* fixup! Format Python code with psf/black push
2020-01-24 00:21:51 +08:00
kostogls
2cf7e8f994 fix comment ()
* fix comment

* Update armstrong_numbers.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-22 17:00:48 +01:00
kostogls
9a8e7de2df Adding Armstrong number ()
* Adding Armstrong number

* Update armstrong_numbers

* Update armstrong_numbers.py

* Update armstrong_numbers.py

* Update armstrong_numbers.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-22 16:35:30 +01:00
Kyle
724b7d2198 Add Prim's algorithm with min heap () 2020-01-22 02:46:03 +08:00
Sharan Krishnan
3042702d04 Area Under a Curve Algorithm ()
* A recursive insertion sort

* added doctests and typehints

* Added arc length and numerical integration calculators

* fixed doc test

* Fixed some conversion errors

* Fixed some commenting

* Deleted numerical integration to allow 1 file per push

* Changed string formatting method

* Added program to calculate trapezoidal area under curve

* Deleted files ensure 1 pull request per file

* file name changed

* Update area_under_curve.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-19 05:21:12 +01:00
Sharan Krishnan
e25d4248a3 Added an algorithm that approximates line lengths ()
* A recursive insertion sort

* added doctests and typehints

* Added arc length and numerical integration calculators

* fixed doc test

* Fixed some conversion errors

* Fixed some commenting

* Deleted numerical integration to allow 1 file per push

* Changed string formatting method
2020-01-19 01:25:27 +08:00
Pooja
99ebd1a018 Create factorial_iterative.py ()
* Create factorial_iterative.py

* Update factorial_iterative.py

* Update factorial_iterative.py

* Update factorial_iterative.py

* print(f"factorial{n} is {factorial(n)}")

* Update factorial_recursive.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-18 14:06:48 +01:00
Christian Clauss
bfcb95b297
Create codespell.yml ()
* fixup! Format Python code with psf/black push

* Create codespell.yml

* fixup! Format Python code with psf/black push
2020-01-18 13:24:33 +01:00
Faraz Ahmed Khan
c01d178798 Added implementation for simulated annealing ()
* added hill climbing algorithm

* Shorten long lines, streamline get_neighbors()

* Update hill_climbing.py

* Update and rename optimization/hill_climbing.py to searches/hill_climbing.py

* added hill climbing algorithm

* Shorten long lines, streamline get_neighbors()

* Update hill_climbing.py

* Rebased

* added simulated annealing.py

* added final comments and test

* black formatted

* restricted search domain

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-17 23:32:06 +01:00
Sombit Bose
c5b376d52d Solution for problem 30 of Euler Project ()
* Create soln.py

Solution for problem 30 of Euler Project

* Update soln.py

* update soln.py

modified the changes

* if __name__ == "__main__":

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-16 15:19:02 +01:00
Cole Mollica
38bad6b1e8 Implemented Square Root Algorithm ()
* Added to maths and strings

* added changes suggest by cclauss

* added square root function

* Fixed type hinting

* fixed type error

* Fixed another type error
2020-01-15 22:21:26 +01:00
lanzhiwang
fc4c0f5bfd implement max heap and more pythonic ()
* implement max heap and more pythonic

* add doctests for heap
2020-01-14 12:16:11 +01:00
Logan Lieou
d09a805804 Typo? ()
* Typo?

newNod -> newNode

* newNode -> new_node

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-14 10:21:02 +01:00
lanzhiwang
56e7ae01d2 enhance swapping code in link ()
* enhance swapping code in link

* heapify do not recursive

* fix

* fix identifier and add test

* typing.Any and LinkedList instead of Linkedlist

* typing.Any and LinkedList instead of Linkedlist
2020-01-14 14:32:15 +05:30
Christian Clauss
b492e64417 Create pull_request_template.md ()
* Create pull_request_template.md

* fixup! Format Python code with psf/black push

* Update pull_request_template.md

* updating DIRECTORY.md

* Update pull_request_template.md

* Update pull_request_template.md

* Update pull_request_template.md

* Update pull_request_template.md

* Update pull_request_template.md

* Typos and formatting

Co-authored-by: John Law <johnlaw.po@gmail.com>
2020-01-14 02:56:06 +08:00
shrabian
75523f9c1a A recursive insertion sort ()
* A recursive insertion sort

* added doctests and typehints
2020-01-13 21:52:18 +05:30
Leon Morten Richter
4607cd48b6 Add a program to evaluate a string in prefix notation (Polish Notation) ()
* Create infix_evaluation.py

* fix doctests

* Rename infix_evaluation.py to prefix_evaluation.py

* Add prefix_evaluation.py to directory
2020-01-12 15:00:40 +05:30
onlinejudge95
2cb6a6523e
Corrects failing check in master () 2020-01-12 14:58:47 +05:30
AlexLeka98
98733618e2 Added Strassen divide and conquer algorithm to multiply matrices. ()
* Added Strassen divide and conquer algorithm to multiply matrices

* Divide and conquer algorith to calculate pow(a,b) or a raised to the power of b

* Putting docstring inside the function.

* Added doctests
2020-01-12 09:34:10 +05:30
Christian Clauss
f9e1a16a98 git add DIRECTORY.md ()
* git add DIRECTORY.md

* updating DIRECTORY.md
2020-01-10 09:08:49 +08:00
Cole Mollica
a26ae00b24 Added to maths and strings ()
* Added to maths and strings

* added changes suggest by cclauss
2020-01-08 14:18:17 +01:00
Christian Clauss
e849578e59 Update and rename lca.py to lowest_common_ancestor.py ()
* Update and rename lca.py to lowest_common_ancestor.py

* fixup! Format Python code with psf/black push
2020-01-08 21:15:41 +08:00
Christian Clauss
1f2b1a88ab Typos in comments in hill_climbing.py ()
* Typos in comments in hill_climbing.py

* fixup! Format Python code with psf/black push
2020-01-08 21:06:53 +08:00
MadhavCode
36d229f82a number of Possible Binary Search Tree and Binary Tree. ()
* Code Upload

* Code Upload

* Delete n_possible_bst

* Find the N Possible Binary Tree and Binary Tree from given Nth Number of Node.

* Update in Test

* Update and rename n_possible_bst.py to number_of_possible_binary_trees.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-08 13:25:50 +01:00
Faraz Ahmed Khan
cbab5f18f1 added hill climbing algorithm ()
* added hill climbing algorithm

* Shorten long lines, streamline get_neighbors()

* Update hill_climbing.py

* Update and rename optimization/hill_climbing.py to searches/hill_climbing.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-08 06:00:55 +01:00
MadhavCode
46df735cf4 New Code!!(Finding the N Possible Binary Search Tree and Binary Tree from Given N node Number) ()
* Code Upload

* Code Upload

* Delete n_possible_bst

* Find the N Possible Binary Tree and Binary Tree from given Nth Number of Node.

* Update in Test

* Update and rename n_possible_bst.py to number_of_possible_binary_trees.py

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-07 10:17:35 +01:00
nishithshowri006
51b769095f Create get_imdb_top_250_movies_csv.py ()
* Create get_imdb_top_250_movies_csv.py

* Update get_imdb_top_250_movies_csv.py

* Update get_imdb_top_250_movies_csv.py

* get_imdb_top_250_movies()

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-05 22:28:36 +01:00
Himanshu Bhatnagar
b212a59754 Create deque_doubly.py ()
* Create deque_doubly.py

Implementing Deque ADT using Doubly Linked List....

* Update deque_doubly.py

* Update deque_doubly.py

Adding doctest

* Update doctest of deque_doubly.py

* Update deque_doubly.py

* linked_list.

Co-authored-by: Christian Clauss <cclauss@me.com>
2020-01-05 10:51:03 +01:00