@@ -12,12 +12,12 @@ These implementations are for learning purposes. They may be less efficient than
1212
1313Anup Kumar Panwar
1414  ; [[ Gmail] ( mailto:1anuppanwar@gmail.com?Subject=The%20Algorithms%20-%20Python )
15-   ; [ Gihub ] ( https://github.com/anupkumarpanwar )
15+   ; [ GitHub ] ( https://github.com/anupkumarpanwar )
1616  ; [ LinkedIn] ( https://www.linkedin.com/in/anupkumarpanwar/ )]
1717
1818Chetan Kaushik
1919  ; [[ Gmail] ( mailto:dynamitechetan@gmail.com?Subject=The%20Algorithms%20-%20Python )
20-   ; [ Gihub ] ( https://github.com/dynamitechetan )
20+   ; [ GitHub ] ( https://github.com/dynamitechetan )
2121  ; [ LinkedIn] ( https://www.linkedin.com/in/chetankaushik/ )]
2222
2323## Contribution Guidelines
@@ -28,337 +28,6 @@ Read our [Contribution Guidelines](CONTRIBUTING.md) before you contribute.
2828
2929We're on [ Gitter] ( https://gitter.im/TheAlgorithms ) ! Please join us.
3030
31- # Algorithms
31+ ## Algorithms
3232
33- ## Hashes
34-
35- - [ Md5] ( ./hashes/md5.py )
36- - [ Chaos Machine] ( ./hashes/chaos_machine.py )
37- - [ Sha1] ( ./hashes/sha1.py )
38-
39- ## File Transfer Protocol
40-
41- - [ Ftp Client Server] ( ./file_transfer_protocol/ftp_client_server.py )
42- - [ Ftp Send Receive] ( ./file_transfer_protocol/ftp_send_receive.py )
43-
44- ## Backtracking
45-
46- - [ N Queens] ( ./backtracking/n_queens.py )
47- - [ Sum Of Subsets] ( ./backtracking/sum_of_subsets.py )
48- - [ All Subsequences] ( ./backtracking/all_subsequences.py )
49- - [ All Permutations] ( ./backtracking/all_permutations.py )
50-
51- ## Ciphers
52-
53- - [ Transposition Cipher] ( ./ciphers/transposition_cipher.py )
54- - [ Atbash] ( ./ciphers/Atbash.py )
55- - [ Rot13] ( ./ciphers/rot13.py )
56- - [ Rabin Miller] ( ./ciphers/rabin_miller.py )
57- - [ Transposition Cipher Encrypt Decrypt File] ( ./ciphers/transposition_cipher_encrypt_decrypt_file.py )
58- - [ Affine Cipher] ( ./ciphers/affine_cipher.py )
59- - [ Trafid Cipher] ( ./ciphers/trafid_cipher.py )
60- - [ Base16] ( ./ciphers/base16.py )
61- - [ Elgamal Key Generator] ( ./ciphers/elgamal_key_generator.py )
62- - [ Rsa Cipher] ( ./ciphers/rsa_cipher.py )
63- - [ Prehistoric Men.txt] ( ./ciphers/prehistoric_men.txt )
64- - [ Vigenere Cipher] ( ./ciphers/vigenere_cipher.py )
65- - [ Xor Cipher] ( ./ciphers/xor_cipher.py )
66- - [ Brute Force Caesar Cipher] ( ./ciphers/brute_force_caesar_cipher.py )
67- - [ Rsa Key Generator] ( ./ciphers/rsa_key_generator.py )
68- - [ Simple Substitution Cipher] ( ./ciphers/simple_substitution_cipher.py )
69- - [ Playfair Cipher] ( ./ciphers/playfair_cipher.py )
70- - [ Morse Code Implementation] ( ./ciphers/morse_Code_implementation.py )
71- - [ Base32] ( ./ciphers/base32.py )
72- - [ Base85] ( ./ciphers/base85.py )
73- - [ Base64 Cipher] ( ./ciphers/base64_cipher.py )
74- - [ Onepad Cipher] ( ./ciphers/onepad_cipher.py )
75- - [ Caesar Cipher] ( ./ciphers/caesar_cipher.py )
76- - [ Hill Cipher] ( ./ciphers/hill_cipher.py )
77- - [ Cryptomath Module] ( ./ciphers/cryptomath_module.py )
78-
79- ## Arithmetic Analysis
80-
81- - [ Bisection] ( ./arithmetic_analysis/bisection.py )
82- - [ Newton Method] ( ./arithmetic_analysis/newton_method.py )
83- - [ Newton Raphson Method] ( ./arithmetic_analysis/newton_raphson_method.py )
84- - [ Intersection] ( ./arithmetic_analysis/intersection.py )
85- - [ Lu Decomposition] ( ./arithmetic_analysis/lu_decomposition.py )
86-
87- ## Boolean Algebra
88-
89- - [ Quine Mc Cluskey] ( ./boolean_algebra/quine_mc_cluskey.py )
90-
91- ## Traversals
92-
93- - [ Binary Tree Traversals] ( ./traversals/binary_tree_traversals.py )
94-
95- ## Maths
96-
97- - [ Average] ( ./maths/average.py )
98- - [ Abs Max] ( ./maths/abs_Max.py )
99- - [ Average Median] ( ./maths/average_median.py )
100- - [ Trapezoidal Rule] ( ./maths/trapezoidal_rule.py )
101- - [ Prime Check] ( ./maths/Prime_Check.py )
102- - [ Modular Exponential] ( ./maths/modular_exponential.py )
103- - [ Newton Raphson] ( ./maths/newton_raphson.py )
104- - [ Factorial Recursive] ( ./maths/factorial_recursive.py )
105- - [ Extended Euclidean Algorithm] ( ./maths/extended_euclidean_algorithm.py )
106- - [ Greater Common Divisor] ( ./maths/greater_common_divisor.py )
107- - [ Fibonacci] ( ./maths/fibonacci.py )
108- - [ Find Lcm] ( ./maths/find_lcm.py )
109- - [ Find Max] ( ./maths/Find_Max.py )
110- - [ Fermat Little Theorem] ( ./maths/fermat_little_theorem.py )
111- - [ Factorial Python] ( ./maths/factorial_python.py )
112- - [ Fibonacci Sequence Recursion] ( ./maths/fibonacci_sequence_recursion.py )
113- - [ Sieve Of Eratosthenes] ( ./maths/sieve_of_eratosthenes.py )
114- - [ Abs Min] ( ./maths/abs_Min.py )
115- - [ Lucas Series] ( ./maths/lucasSeries.py )
116- - [ Segmented Sieve] ( ./maths/segmented_sieve.py )
117- - [ Find Min] ( ./maths/Find_Min.py )
118- - [ Abs] ( ./maths/abs.py )
119- - [ Simpson Rule] ( ./maths/simpson_rule.py )
120- - [ Basic Maths] ( ./maths/basic_maths.py )
121- - [ 3n+1] ( ./maths/3n+1.py )
122- - [ Binary Exponentiation] ( ./maths/Binary_Exponentiation.py )
123-
124- ## Digital Image Processing
125-
126- - ## Filters
127-
128- - [ Median Filter] ( ./digital_image_processing/filters/median_filter.py )
129- - [ Gaussian Filter] ( ./digital_image_processing/filters/gaussian_filter.py )
130-
131-
132- ## Compression
133-
134- - [ Peak Signal To Noise Ratio] ( ./compression/peak_signal_to_noise_ratio.py )
135- - [ Huffman] ( ./compression/huffman.py )
136-
137- ## Graphs
138-
139- - [ BFS Shortest Path] ( ./graphs/bfs_shortest_path.py )
140- - [ Directed And Undirected (Weighted) Graph] ( < ./graphs/Directed_and_Undirected_(Weighted)_Graph.py > )
141- - [ Minimum Spanning Tree Prims] ( ./graphs/minimum_spanning_tree_prims.py )
142- - [ Graph Matrix] ( ./graphs/graph_matrix.py )
143- - [ Basic Graphs] ( ./graphs/basic_graphs.py )
144- - [ Dijkstra 2] ( ./graphs/dijkstra_2.py )
145- - [ Tarjans Strongly Connected Components] ( ./graphs/tarjans_scc.py )
146- - [ Check Bipartite Graph BFS] ( ./graphs/check_bipartite_graph_bfs.py )
147- - [ Depth First Search] ( ./graphs/depth_first_search.py )
148- - [ Kahns Algorithm Long] ( ./graphs/kahns_algorithm_long.py )
149- - [ Breadth First Search] ( ./graphs/breadth_first_search.py )
150- - [ Dijkstra] ( ./graphs/dijkstra.py )
151- - [ Articulation Points] ( ./graphs/articulation_points.py )
152- - [ Bellman Ford] ( ./graphs/bellman_ford.py )
153- - [ Check Bipartite Graph Dfs] ( ./graphs/check_bipartite_graph_dfs.py )
154- - [ Strongly Connected Components Kosaraju] ( ./graphs/scc_kosaraju.py )
155- - [ Multi Hueristic Astar] ( ./graphs/multi_hueristic_astar.py )
156- - [ Page Rank] ( ./graphs/page_rank.py )
157- - [ Eulerian Path And Circuit For Undirected Graph] ( ./graphs/Eulerian_path_and_circuit_for_undirected_graph.py )
158- - [ Edmonds Karp Multiple Source And Sink] ( ./graphs/edmonds_karp_multiple_source_and_sink.py )
159- - [ Floyd Warshall] ( ./graphs/floyd_warshall.py )
160- - [ Minimum Spanning Tree Kruskal] ( ./graphs/minimum_spanning_tree_kruskal.py )
161- - [ Prim] ( ./graphs/prim.py )
162- - [ Kahns Algorithm Topo] ( ./graphs/kahns_algorithm_topo.py )
163- - [ BFS] ( ./graphs/BFS.py )
164- - [ Finding Bridges] ( ./graphs/finding_bridges.py )
165- - [ Graph List] ( ./graphs/graph_list.py )
166- - [ Dijkstra Algorithm] ( ./graphs/dijkstra_algorithm.py )
167- - [ A Star] ( ./graphs/a_star.py )
168- - [ Even Tree] ( ./graphs/even_tree.py )
169- - [ DFS] ( ./graphs/DFS.py )
170-
171- ## Networking Flow
172-
173- - [ Minimum Cut] ( ./networking_flow/minimum_cut.py )
174- - [ Ford Fulkerson] ( ./networking_flow/ford_fulkerson.py )
175-
176- ## Matrix
177-
178- - [ Matrix Operation] ( ./matrix/matrix_operation.py )
179- - [ Searching In Sorted Matrix] ( ./matrix/searching_in_sorted_matrix.py )
180- - [ Spiral Print] ( ./matrix/spiral_print.py )
181-
182- ## Searches
183-
184- - [ Quick Select] ( ./searches/quick_select.py )
185- - [ Binary Search] ( ./searches/binary_search.py )
186- - [ Interpolation Search] ( ./searches/interpolation_search.py )
187- - [ Jump Search] ( ./searches/jump_search.py )
188- - [ Linear Search] ( ./searches/linear_search.py )
189- - [ Ternary Search] ( ./searches/ternary_search.py )
190- - [ Tabu Search] ( ./searches/tabu_search.py )
191- - [ Sentinel Linear Search] ( ./searches/sentinel_linear_search.py )
192-
193- ## Conversions
194-
195- - [ Decimal To Binary] ( ./conversions/decimal_to_binary.py )
196- - [ Decimal To Octal] ( ./conversions/decimal_to_octal.py )
197-
198- ## Dynamic Programming
199-
200- - [ Fractional Knapsack] ( ./dynamic_programming/Fractional_Knapsack.py )
201- - [ Sum Of Subset] ( ./dynamic_programming/sum_of_subset.py )
202- - [ Fast Fibonacci] ( ./dynamic_programming/fast_fibonacci.py )
203- - [ Bitmask] ( ./dynamic_programming/bitmask.py )
204- - [ Abbreviation] ( ./dynamic_programming/abbreviation.py )
205- - [ Rod Cutting] ( ./dynamic_programming/rod_cutting.py )
206- - [ Knapsack] ( ./dynamic_programming/knapsack.py )
207- - [ Max Sub Array] ( ./dynamic_programming/max_sub_array.py )
208- - [ Fibonacci] ( ./dynamic_programming/fibonacci.py )
209- - [ Minimum Partition] ( ./dynamic_programming/minimum_partition.py )
210- - [ K Means Clustering Tensorflow] ( ./dynamic_programming/k_means_clustering_tensorflow.py )
211- - [ Coin Change] ( ./dynamic_programming/coin_change.py )
212- - [ Subset Generation] ( ./dynamic_programming/subset_generation.py )
213- - [ Floyd Warshall] ( ./dynamic_programming/floyd_warshall.py )
214- - [ Longest Sub Array] ( ./dynamic_programming/longest_sub_array.py )
215- - [ Integer Partition] ( ./dynamic_programming/integer_partition.py )
216- - [ Matrix Chain Order] ( ./dynamic_programming/matrix_chain_order.py )
217- - [ Edit Distance] ( ./dynamic_programming/edit_distance.py )
218- - [ Longest Common Subsequence] ( ./dynamic_programming/longest_common_subsequence.py )
219- - [ Longest Increasing Subsequence O(nlogn)] ( < ./dynamic_programming/longest_increasing_subsequence_O(nlogn).py > )
220- - [ Longest Increasing Subsequence] ( ./dynamic_programming/longest_increasing_subsequence.py )
221-
222- ## Divide And Conquer
223-
224- - [ Max Subarray Sum] ( ./divide_and_conquer/max_subarray_sum.py )
225- - [ Closest Pair Of Points] ( ./divide_and_conquer/closest_pair_of_points.py )
226-
227- ## Strings
228-
229- - [ Knuth Morris Pratt] ( ./strings/knuth_morris_pratt.py )
230- - [ Rabin Karp] ( ./strings/rabin_karp.py )
231- - [ Naive String Search] ( ./strings/naive_String_Search.py )
232- - [ Levenshtein Distance] ( ./strings/levenshtein_distance.py )
233- - [ Min Cost String Conversion] ( ./strings/min_cost_string_conversion.py )
234- - [ Boyer Moore Search] ( ./strings/Boyer_Moore_Search.py )
235- - [ Manacher] ( ./strings/manacher.py )
236-
237- ## Sorts
238-
239- - [ Quick Sort] ( ./sorts/quick_sort.py )
240- - [ Selection Sort] ( ./sorts/selection_sort.py )
241- - [ Bitonic Sort] ( ./sorts/Bitonic_Sort.py )
242- - [ Cycle Sort] ( ./sorts/cycle_sort.py )
243- - [ Comb Sort] ( ./sorts/comb_sort.py )
244- - [ Topological Sort] ( ./sorts/topological_sort.py )
245- - [ Merge Sort Fastest] ( ./sorts/merge_sort_fastest.py )
246- - [ Random Pivot Quick Sort] ( ./sorts/random_pivot_quick_sort.py )
247- - [ Heap Sort] ( ./sorts/heap_sort.py )
248- - [ Insertion Sort] ( ./sorts/insertion_sort.py )
249- - [ Counting Sort] ( ./sorts/counting_sort.py )
250- - [ Bucket Sort] ( ./sorts/bucket_sort.py )
251- - [ Quick Sort 3 Partition] ( ./sorts/quick_sort_3_partition.py )
252- - [ Bogo Sort] ( ./sorts/bogo_sort.py )
253- - [ Shell Sort] ( ./sorts/shell_sort.py )
254- - [ Pigeon Sort] ( ./sorts/pigeon_sort.py )
255- - [ Odd-Even Transposition Parallel] ( ./sorts/Odd-Even_transposition_parallel.py )
256- - [ Tree Sort] ( ./sorts/tree_sort.py )
257- - [ Cocktail Shaker Sort] ( ./sorts/cocktail_shaker_sort.py )
258- - [ Random Normal Distribution Quicksort] ( ./sorts/random_normal_distribution_quicksort.py )
259- - [ Wiggle Sort] ( ./sorts/wiggle_sort.py )
260- - [ Pancake Sort] ( ./sorts/pancake_sort.py )
261- - [ External Sort] ( ./sorts/external_sort.py )
262- - [ Tim Sort] ( ./sorts/tim_sort.py )
263- - [ Sorting Graphs.png] ( ./sorts/sorting_graphs.png )
264- - [ Radix Sort] ( ./sorts/radix_sort.py )
265- - [ Odd-Even Transposition Single-threaded] ( ./sorts/Odd-Even_transposition_single-threaded.py )
266- - [ Bubble Sort] ( ./sorts/bubble_sort.py )
267- - [ Gnome Sort] ( ./sorts/gnome_sort.py )
268- - [ Merge Sort] ( ./sorts/merge_sort.py )
269-
270- ## Machine Learning
271-
272- - [ Perceptron] ( ./machine_learning/perceptron.py )
273- - [ Random Forest Classifier] ( ./machine_learning/random_forest_classification/random_forest_classifier.ipynb )
274- - [ NaiveBayes.ipynb] ( ./machine_learning/NaiveBayes.ipynb )
275- - [ Scoring Functions] ( ./machine_learning/scoring_functions.py )
276- - [ Logistic Regression] ( ./machine_learning/logistic_regression.py )
277- - [ Gradient Descent] ( ./machine_learning/gradient_descent.py )
278- - [ Linear Regression] ( ./machine_learning/linear_regression.py )
279- - [ Random Forest Regression] ( ./machine_learning/random_forest_regression/random_forest_regression.py )
280- - [ Random Forest Regression] ( ./machine_learning/random_forest_regression/random_forest_regression.ipynb )
281- - [ Reuters One Vs Rest Classifier.ipynb] ( ./machine_learning/reuters_one_vs_rest_classifier.ipynb )
282- - [ Decision Tree] ( ./machine_learning/decision_tree.py )
283- - [ Knn Sklearn] ( ./machine_learning/knn_sklearn.py )
284- - [ K Means Clust] ( ./machine_learning/k_means_clust.py )
285-
286- ## Neural Network
287-
288- - [ Perceptron] ( ./neural_network/perceptron.py )
289- - [ Fully Connected Neural Network] ( ./neural_network/fully_connected_neural_network.ipynb )
290- - [ Convolution Neural Network] ( ./neural_network/convolution_neural_network.py )
291- - [ Back Propagation Neural Network] ( ./neural_network/back_propagation_neural_network.py )
292-
293- ## Data Structures
294-
295- - ## Binary Tree
296-
297- - [ Basic Binary Tree] ( ./data_structures/binary_tree/basic_binary_tree.py )
298- - [ Red Black Tree] ( ./data_structures/binary_tree/red_black_tree.py )
299- - [ Fenwick Tree] ( ./data_structures/binary_tree/fenwick_tree.py )
300- - [ Treap] ( ./data_structures/binary_tree/treap.py )
301- - [ AVL Tree] ( ./data_structures/binary_tree/AVL_tree.py )
302- - [ Segment Tree] ( ./data_structures/binary_tree/segment_tree.py )
303- - [ Lazy Segment Tree] ( ./data_structures/binary_tree/lazy_segment_tree.py )
304- - [ Binary Search Tree] ( ./data_structures/binary_tree/binary_search_tree.py )
305-
306- - ## Trie
307-
308- - [ Trie] ( ./data_structures/trie/trie.py )
309-
310- - ## Linked List
311-
312- - [ Swap Nodes] ( ./data_structures/linked_list/swap_nodes.py )
313- - [ Doubly Linked List] ( ./data_structures/linked_list/doubly_linked_list.py )
314- - [ Singly Linked List] ( ./data_structures/linked_list/singly_linked_list.py )
315- - [ Is Palindrome] ( ./data_structures/linked_list/is_Palindrome.py )
316-
317- - ## Stacks
318-
319- - [ Postfix Evaluation] ( ./data_structures/stacks/postfix_evaluation.py )
320- - [ Balanced Parentheses] ( ./data_structures/stacks/balanced_parentheses.py )
321- - [ Infix To Prefix Conversion] ( ./data_structures/stacks/infix_to_prefix_conversion.py )
322- - [ Stack] ( ./data_structures/stacks/stack.py )
323- - [ Infix To Postfix Conversion] ( ./data_structures/stacks/infix_to_postfix_conversion.py )
324- - [ Next Greater Element] ( ./data_structures/stacks/next_greater_element.py )
325- - [ Stock Span Problem] ( ./data_structures/stacks/stock_span_problem.py )
326-
327- - ## Queue
328-
329- - [ Queue On Pseudo Stack] ( ./data_structures/queue/queue_on_pseudo_stack.py )
330- - [ Double Ended Queue] ( ./data_structures/queue/double_ended_queue.py )
331- - [ Queue On List] ( ./data_structures/queue/queue_on_list.py )
332-
333- - ## Heap
334-
335- - [ Heap] ( ./data_structures/heap/heap.py )
336-
337- - ## Hashing
338-
339- - [ Hash Table With Linked List] ( ./data_structures/hashing/hash_table_with_linked_list.py )
340- - [ Quadratic Probing] ( ./data_structures/hashing/quadratic_probing.py )
341- - [ Hash Table] ( ./data_structures/hashing/hash_table.py )
342- - [ Double Hash] ( ./data_structures/hashing/double_hash.py )
343-
344-
345- ## Other
346-
347- - [ Detecting English Programmatically] ( ./other/detecting_english_programmatically.py )
348- - [ Fischer Yates Shuffle] ( ./other/fischer_yates_shuffle.py )
349- - [ Primelib] ( ./other/primelib.py )
350- - [ Binary Exponentiation 2] ( ./other/binary_exponentiation_2.py )
351- - [ Anagrams] ( ./other/anagrams.py )
352- - [ Palindrome] ( ./other/palindrome.py )
353- - [ Finding Primes] ( ./other/finding_Primes.py )
354- - [ Two Sum] ( ./other/two_sum.py )
355- - [ Password Generator] ( ./other/password_generator.py )
356- - [ Linear Congruential Generator] ( ./other/linear_congruential_generator.py )
357- - [ Frequency Finder] ( ./other/frequency_finder.py )
358- - [ Euclidean Gcd] ( ./other/euclidean_gcd.py )
359- - [ Word Patterns] ( ./other/word_patterns.py )
360- - [ Nested Brackets] ( ./other/nested_brackets.py )
361- - [ Binary Exponentiation] ( ./other/binary_exponentiation.py )
362- - [ Sierpinski Triangle] ( ./other/sierpinski_triangle.py )
363- - [ Game Of Life] ( ./other/game_of_life.py )
364- - [ Tower Of Hanoi] ( ./other/tower_of_hanoi.py )
33+ See our [ directory] ( DIRECTORY.md ) .
0 commit comments