Commit Graph

1428 Commits

Author SHA1 Message Date
Artyom Belousov
94380a17a8 Added treap (#797)
* Added treap

* Added comments to treap
2019-05-26 06:20:37 +08:00
Mehdi ALAOUI
02c0daf9e5 Adding unit tests for sorting functions, and improving readability on some sorting algorithms (#784)
* Adding variable to fade out ambiguity

* More readability on merge sorting algorithm

* Updating merge_sort_fastest description and explaining why

* Adding tests file with imports

* Standardazing filenames and function names

* Adding test cases and test functions

* Adding test loop

* Putting 'user oriented code' inside main condition for having valid imports

* Fixing condition

* Updating tests: adding cases and todo list

* Refactoring first euler problem's first solution
2019-05-25 21:41:24 +08:00
José Henrique Ivanchechen
9f982a83c8 add pigeon hole sort (#833) 2019-05-24 22:46:39 +05:30
BruceLee569
a0ab3ce098 Update quick_sort.py (#830)
Modify the list comprehensions to reduce the number of judgments, the speed has increased by more than 50%.
2019-05-24 23:54:03 +08:00
Níkolas Vargas
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
Anirudh Ajith
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
Adam
c1130490d7 fix spelling on line 44 of bucket sort (#824)
* change besd to best
2019-05-20 21:22:20 +08:00
DaveAxiom
316d5ffa37 Add NQueens backtracking search implementation (#504) 2019-05-20 04:36:46 +08:00
Andy Lau
f5abc04176 Update bucket_sort.py (#821)
* Some simplification
2019-05-19 17:00:54 +08:00
weixuanhu
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
Sarvesh Dubey
f3608acfd5 Created shortest path using bfs (#794)
* Created shortest path using bfs
2019-05-17 11:12:06 +08:00
cclauss
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
Erfan Alimohammadi
a65efd42c4 Implement check_bipartite_graph using DFS. (#808) 2019-05-16 19:24:56 +08:00
ImNandha
13c0c166d8 Update graph.py (#809) 2019-05-16 19:23:23 +08:00
Níkolas Vargas
c47c1ab03c enhancement (#803) 2019-05-16 19:20:42 +08:00
Reshad Hasan
76061ab2cc added eulerian path and circuit finding algorithm (#787) 2019-05-16 19:20:27 +08:00
Erfan Alimohammadi
c4d16820bc
Fix typo (#806) 2019-05-14 21:45:53 +04:30
Tommy.Liu
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
Ravi Patel
70bb6b2f18 Added Huffman Coding Algorithm (#798) 2019-05-13 10:45:27 +05:30
Bhushan Borole
3f7bec6c00 Added page-rank algorithm implementation (#780)
* Added page-rank algorithm implementation

* changed init variables
2019-05-12 19:46:47 +08:00
Anup Kumar Panwar
d8badcc6d5
Update README.md 2019-05-12 09:10:56 +05:30
Julien Castiaux
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
Junth Basnet
56513cb21f add-binary-exponentiation (#790) 2019-05-10 19:03:05 +08:00
Lorenz Nickel
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
weixuanhu
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
Anup Kumar Panwar
e22ea7e380
Update Directed and Undirected (Weighted) Graph.py 2019-05-04 21:53:06 +05:30
Anup Kumar Panwar
c5c3a74f8f
Update README.md 2019-05-04 15:43:37 +05:30
yolstatrisch
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
Gattlin Walker
06dbef04a0 Adding quick sort where random pivot point is chosen (#774) 2019-04-30 21:16:42 +08:00
sakuralethe
48553da785 variable in function should be lowercase (#768) 2019-04-26 17:43:51 +08:00
Viraat Das
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
Vysor
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
John Law
48bba495ae
Rename is_Palindrome to is_Palindrome.py (#752) 2019-04-20 15:13:02 +08:00
Sanders Lin
a91f0e7ca0 Updated Euler problem 21 sol1.py 2019-04-19 21:30:40 +05:30
jfeng43
a170997eaf Add animation for heap sort 2019-04-19 21:01:06 +05:30
WILFRIED NJANGUI
b2f1d9c337 implementation of tower_of_hanoi algorithm (#756) 2019-04-14 19:58:16 +08:00
Reshad Hasan
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
rohan11074
137871bfef feature to add input (#749) 2019-04-07 23:55:32 +08:00
Ahish
56de3df784 Update basic_binary_tree.py (#748) 2019-04-07 23:53:50 +08:00
Ishani
15bc87fb41 Create is_Palindrome (#740) 2019-04-04 16:40:11 +05:30
nowakowsky
5b7730bef1 Added Trafid Cipher (#746) 2019-04-04 03:27:36 +08:00
Aditya Haridas Menon
bb29dc55fa Bitmasking and DP added (#705) 2019-03-28 01:59:31 +08:00
RayCurse
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
louisparis
8b8a6d881c reduce indentation (#741) 2019-03-28 01:46:46 +08:00
Ishani
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
Ishani
96c36f8286 added wiggle_sort.py (#734)
* Wiggle_sort

* Rename Wiggle_Sort to wiggle_sort.py
2019-03-18 02:12:22 +08:00
Maxim Semenyuk
8e67ac3b76 Fix '__bool__' method (#735)
The method returns the truth when the stack is empty
2019-03-10 07:40:29 +05:30
Akash Ali
2c67f6161c Update basic_binary_tree.py (#725)
I have added the comments for better understanding.
2019-03-07 23:53:29 +08:00
Akash Ali
6f6510623c Update heap.py (#726)
Added comments for the better understanding of heap.
2019-03-04 16:49:36 +08:00
Ashwek Swamy
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