023f5e092d
fix empty list validation and code data structures ( #826 )
...
* fix empty list validation and code data structures
* Update bucket_sort.py
https://github.com/TheAlgorithms/Python/pull/826#pullrequestreview-240357549
2019-05-22 20:09:36 +08:00
b5667e5ee9
Removed the (incorrectly named) redundant file graph_list.py and renamed graph.py to graph_list.py ( #820 )
2019-05-21 14:06:05 +08:00
c1130490d7
fix spelling on line 44 of bucket sort ( #824 )
...
* change besd to best
2019-05-20 21:22:20 +08:00
316d5ffa37
Add NQueens backtracking search implementation ( #504 )
2019-05-20 04:36:46 +08:00
f5abc04176
Update bucket_sort.py ( #821 )
...
* Some simplification
2019-05-19 17:00:54 +08:00
b6c3fa8992
Interpolation search - fix endless loop bug, divide 0 bug and update description ( #793 )
...
* fix endless loop bug, divide 0 bug and update description
fix an endless bug, for example, if collection = [10,30,40,45,50,66,77,93], item = 67.
fix divide 0 bug, when right=left it is not OK to point = left + ((item - sorted_collection[left]) * (right - left)) // (sorted_collection[right] - sorted_collection[left])
update 'sorted' to 'ascending sorted' in description to avoid confusion
* delete swap files
* delete 'address' and add input validation
2019-05-18 10:59:12 +08:00
f3608acfd5
Created shortest path using bfs ( #794 )
...
* Created shortest path using bfs
2019-05-17 11:12:06 +08:00
5b86928c4b
Use ==/!= to compare str, bytes, and int literals ( #767 )
...
* Travis CI: Add more flake8 tests
* Use ==/!= to compare str, bytes, and int literals
./project_euler/problem_17/sol1.py:25:7: F632 use ==/!= to compare str, bytes, and int literals
if i%100 is not 0:
^
* Use ==/!= to compare str, bytes, and int literals
* Update sol1.py
2019-05-16 19:26:46 +08:00
a65efd42c4
Implement check_bipartite_graph using DFS. ( #808 )
2019-05-16 19:24:56 +08:00
13c0c166d8
Update graph.py ( #809 )
2019-05-16 19:23:23 +08:00
c47c1ab03c
enhancement ( #803 )
2019-05-16 19:20:42 +08:00
76061ab2cc
added eulerian path and circuit finding algorithm ( #787 )
2019-05-16 19:20:27 +08:00
c4d16820bc
Fix typo ( #806 )
2019-05-14 21:45:53 +04:30
3c40fda6a3
More elegant coding for merge_sort_fastest ( #804 )
...
* More elegant coding for merge_sort_fastest
* More elegant coding for merge_sort
2019-05-14 18:17:25 +08:00
70bb6b2f18
Added Huffman Coding Algorithm ( #798 )
2019-05-13 10:45:27 +05:30
3f7bec6c00
Added page-rank algorithm implementation ( #780 )
...
* Added page-rank algorithm implementation
* changed init variables
2019-05-12 19:46:47 +08:00
d8badcc6d5
Update README.md
2019-05-12 09:10:56 +05:30
36828b106f
[FIX] maths/PrimeCheck ( #796 )
...
Current implementation is buggy and hard to read.
* Negative values were raising a TypeError due to `math.sqrt`
* 1 was considered prime, it is not.
* 2 was considered not prime, it is.
The implementation has been corrected to fix the bugs and to enhance
readability.
A docstring has been added with the definition of a prime number.
A complete test suite has been written, it tests the 10 first primes, a
negative value, 0, 1 and some not prime numbers.
closes #795
2019-05-11 19:20:25 +08:00
56513cb21f
add-binary-exponentiation ( #790 )
2019-05-10 19:03:05 +08:00
30a3582983
fix: replaced outdated url ( #791 )
...
http://www.lpb-riannetrujillo.com/blog/python-fractal/ moved to http://www.riannetrujillo.com/blog/python-fractal/
2019-05-09 03:48:30 +08:00
7677c37011
update 'sorted' to 'ascending sorted' in comments ( #789 )
...
To avoid confusion all 'sorted' to 'ascending sorted' in comments
2019-05-06 17:54:31 +08:00
e22ea7e380
Update Directed and Undirected (Weighted) Graph.py
2019-05-04 21:53:06 +05:30
c5c3a74f8f
Update README.md
2019-05-04 15:43:37 +05:30
7b89d03dd7
Added an O(1) solution to problem 002 ( #776 )
...
* Added an O(1) solution to problem 002
* Removed comments from sol3.py that were accidentally added to sol4.py
2019-05-02 00:44:21 +08:00
06dbef04a0
Adding quick sort where random pivot point is chosen ( #774 )
2019-04-30 21:16:42 +08:00
48553da785
variable in function should be lowercase ( #768 )
2019-04-26 17:43:51 +08:00
2fc2ae3f32
Created a generalized algo to edmonds karp ( #724 )
...
Edmonds Karp algorithm is traditionally with only one source and one sink. What do you do if you have multiple sources and sinks? This algorithm is a generalized algorithm that regardless of however many sinks and sources you have, will allow you to use this algorithm. It does this by using the traditional algorithm but adding an artificial source and sink that allows with "infinite" weight.
2019-04-25 19:48:14 +08:00
df04d94543
Some directories had a capital in their name [fixed]. Added a recursive factorial algorithm. ( #763 )
...
* Renaming directories
* Adding a recursive factorial algorithm
2019-04-22 22:53:56 +08:00
48bba495ae
Rename is_Palindrome to is_Palindrome.py ( #752 )
2019-04-20 15:13:02 +08:00
a91f0e7ca0
Updated Euler problem 21 sol1.py
2019-04-19 21:30:40 +05:30
a170997eaf
Add animation for heap sort
2019-04-19 21:01:06 +05:30
b2f1d9c337
implementation of tower_of_hanoi algorithm ( #756 )
2019-04-14 19:58:16 +08:00
52d2fbf3cf
Add lowest common ancestor to data structures ( #732 )
...
* add longest common ancestor in data structures
* add lowest common ancestor to data structures
2019-04-10 23:59:49 +08:00
137871bfef
feature to add input ( #749 )
2019-04-07 23:55:32 +08:00
56de3df784
Update basic_binary_tree.py ( #748 )
2019-04-07 23:53:50 +08:00
15bc87fb41
Create is_Palindrome ( #740 )
2019-04-04 16:40:11 +05:30
5b7730bef1
Added Trafid Cipher ( #746 )
2019-04-04 03:27:36 +08:00
bb29dc55fa
Bitmasking and DP added ( #705 )
2019-03-28 01:59:31 +08:00
441b82a95f
More matrix algorithms ( #745 )
...
* added matrix minor
* added matrix determinant
* added inverse,scalar multiply, identity, transpose
2019-03-28 01:50:43 +08:00
8b8a6d881c
reduce indentation ( #741 )
2019-03-28 01:46:46 +08:00
d27968b78d
Create Searching in sorted matrix ( #738 )
...
* Create Searching in sorted matrix
* Rename Searching in sorted matrix to searching_in_sorted_matrix.py
2019-03-20 23:59:35 +08:00
96c36f8286
added wiggle_sort.py ( #734 )
...
* Wiggle_sort
* Rename Wiggle_Sort to wiggle_sort.py
2019-03-18 02:12:22 +08:00
8e67ac3b76
Fix '__bool__' method ( #735 )
...
The method returns the truth when the stack is empty
2019-03-10 07:40:29 +05:30
2c67f6161c
Update basic_binary_tree.py ( #725 )
...
I have added the comments for better understanding.
2019-03-07 23:53:29 +08:00
6f6510623c
Update heap.py ( #726 )
...
Added comments for the better understanding of heap.
2019-03-04 16:49:36 +08:00
88b6caa30a
fixed balanced_parentheses, Added infix-prefix & postfix evaluation ( #621 )
...
* Create infix_to_prefix_conversion.py
* Create postfix_evaluation.py
* Update balanced_parentheses.py
2019-03-02 00:53:29 +08:00
e6eb6dbb82
Delete Maths/find_hcf.py ( #636 )
2019-02-28 01:49:13 +08:00
dd9f0b3f2e
fix comma spelling from coma to comma ( #722 )
2019-02-27 22:33:29 +08:00
2bbf8cd109
Added extended euclidean algorithm ( #720 )
...
* Added extended euclidean algorithm
* Fixed extended euclidean algorithm
2019-02-27 22:28:59 +08:00
9a44eb4479
Organize graph algorithms ( #719 )
...
* organized graph algorithms
* all graph algorithms in Graphs/ folder
* all graph algorithms are in one folder
* Rename number theory/factorial_python.py to maths/factorial_python.py
2019-02-25 17:35:24 +08:00