944 Commits

Author SHA1 Message Date
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
e6e5f4b301 Added naive string search algorithm (#715) 2019-02-23 22:18:21 +08:00
2b27086c00 Added hill_cipher.py (#696)
A python class that implements the Hill cipher algorithm.
2019-02-22 00:19:28 +08:00
74e94ab5e2 Create project Euler problem 25 sol2.py (#658) 2019-02-21 00:57:48 +08:00
98a149e41e Update coin_change.py (#706)
Cleanup PEP-8 , additional comments , using coin_val, instead of range and index.
2019-02-21 00:54:26 +08:00
ad68eed73e Update caesar_cipher.py (#702) 2019-02-19 23:26:09 +08:00
af08a67b20 added the dijkstra algorithm (#704) 2019-02-18 23:35:46 +08:00
6f283336ae Adding function for actual level order traversal (#699) 2019-02-17 00:16:43 +08:00
301493094e Update absMax.py (#602)
* Update absMax.py

Fixed two bugs

* changed to abs instead of absVal
2019-02-16 00:01:10 +08:00
3c8036432c Project Euler problem 6 solution 3 (#640) 2019-02-14 12:08:21 +08:00
9417091dab Update sol1.py (#643)
small off by one error. Boundary condition: if len(number) =13 , we would need to check exactly 1 combination, namely number itself. However  for i in range(len(number)-13): will iterate 0 times.
2019-02-13 18:02:32 +08:00
60418a6fd7 Create project Euler problem 8 sol2.py (#644)
intuitive solution using functional programming
2019-02-13 14:55:48 +08:00
02155def00 Create project Euler problem 9 sol3.py (#645) 2019-02-13 00:40:05 +08:00
02f850965d Implementation of Newton-Raphson method (#650)
Implemented Newton-Raphson method using pure python. Third party library is used only for visualizing error variation with each iteration.
2019-02-12 00:15:49 +08:00
a0d5c9aaf0 Create BitonicSort.py (#386) 2019-02-11 17:53:49 +08:00
1cbbd5fe1a Added BFS and DFS (graph algorithms) (#408)
* feat: Add Breadth First Search (graph algorithm)

* feat: Add Depth First Search (graph algorithm)
2019-02-11 17:52:14 +08:00
42d42c3136 Project Euler problem 4 sol 2 small fix (#632) 2019-02-11 10:42:43 +08:00
dbe3f062ad Project Euler Problem 14 Solution 2 (#651) 2019-02-10 02:00:05 +08:00
d689b4b083 Project Euler problem 7 solution 3 (#642) 2019-02-10 01:49:57 +08:00
16e95a3de5 p2 sol2 fixed (#669) 2019-02-10 00:59:43 +08:00
8d4d95099f Project Euler problem 3 small fix (#631) 2019-02-10 00:35:52 +08:00
4c14ad9dd6 minor update hacktoberfest (#466) 2019-02-09 09:30:10 +05:30
dc302be505 Create rod_cutting.py (#373) 2019-02-09 08:27:23 +05:30
17a6d1c1a7 Fix sorts/radix_sort (#338) 2019-02-09 07:44:23 +05:30
faf16d7ced Add iteration version (#322) 2019-02-09 07:24:07 +05:30
c6be53e1c4 Rename Directed and Undirected (Weighted) Graph to Directed and Undirected (Weighted) Graph.py (#686) 2019-01-26 21:09:18 +08:00
c92b02cfa3 Editing base64, Adding average file, Editing find_lcm (#673)
* avrage.py

calculate and print the avrage of number list.

* Update base64_cipher.py

encoding and decoding base64 without any module.

* Update and rename avrage.py to average.py

* update find_lcm algorithm

I made find_lcm more efficient form O(num1*num2) to O(min{num1,num2}).
2019-01-20 02:19:06 +05:30
ac28125060 Add median filter algorithm (#675) 2019-01-19 09:20:59 +05:30
2d70e9f747 Fix ResourceWarning: unclosed file (#681)
Signed-off-by: Mickaël Schoentgen <contact@tiger-222.fr>
2019-01-08 16:59:23 +08:00
3dc50529ca Fix DeprecationWarning: invalid escape sequence (#679)
Signed-off-by: Mickaël Schoentgen <contact@tiger-222.fr>
2019-01-08 16:58:47 +08:00
6128533319 Fix use of deprecated assertEquals() in tests (#680) 2019-01-06 09:12:17 +08:00