From 0c4961eb177678ccbe56cec89f593b5801ad112b Mon Sep 17 00:00:00 2001 From: kadubhumika Date: Sun, 6 Sep 2026 17:22:40 +0000 Subject: [PATCH 1/9] updating DIRECTORY.md --- DIRECTORY.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/DIRECTORY.md b/DIRECTORY.md index 55af355f7fc0..2b344f964ad6 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -669,7 +669,9 @@ * Forecasting * [Run](machine_learning/forecasting/run.py) * [Frequent Pattern Growth](machine_learning/frequent_pattern_growth.py) + * [Gaussian Naive Bayes](machine_learning/gaussian_naive_bayes.py) * [Gradient Boosting Classifier](machine_learning/gradient_boosting_classifier.py) + * [Gradient Boosting Regressor](machine_learning/gradient_boosting_regressor.py) * [Gradient Descent](machine_learning/gradient_descent.py) * [K Means Clust](machine_learning/k_means_clust.py) * [K Nearest Neighbours](machine_learning/k_nearest_neighbours.py) @@ -685,6 +687,8 @@ * [Multilayer Perceptron Classifier](machine_learning/multilayer_perceptron_classifier.py) * [Polynomial Regression](machine_learning/polynomial_regression.py) * [Principle Component Analysis](machine_learning/principle_component_analysis.py) + * [Random Forest Classifier](machine_learning/random_forest_classifier.py) + * [Random Forest Regressor](machine_learning/random_forest_regressor.py) * [Scoring Functions](machine_learning/scoring_functions.py) * [Self Organizing Map](machine_learning/self_organizing_map.py) * [Sequential Minimum Optimization](machine_learning/sequential_minimum_optimization.py) @@ -923,6 +927,7 @@ * [Back Propagation Neural Network](neural_network/back_propagation_neural_network.py) * [Convolution Neural Network](neural_network/convolution_neural_network.py) * [Input Data](neural_network/input_data.py) + * [Perceptron](neural_network/perceptron.py) * [Simple Neural Network](neural_network/simple_neural_network.py) * [Two Hidden Layers Neural Network](neural_network/two_hidden_layers_neural_network.py) @@ -975,6 +980,7 @@ * [Lorentz Transformation Four Vector](physics/lorentz_transformation_four_vector.py) * [Malus Law](physics/malus_law.py) * [Mass Energy Equivalence](physics/mass_energy_equivalence.py) + * [Maxwells Equations](physics/maxwells_equations.py) * [Mirror Formulae](physics/mirror_formulae.py) * [N Body Simulation](physics/n_body_simulation.py) * [Newtons Law Of Gravitation](physics/newtons_law_of_gravitation.py) From 41baeb82fea5bc885f42a87ea36d15a57d5c9a11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?BHUMIKA=20KADU=E2=9C=A8?= Date: Wed, 9 Sep 2026 18:11:47 +0000 Subject: [PATCH 2/9] sorts: support comparable items in merge sort --- sorts/merge_sort.py | 53 +++++++++++++++++++++++++++++++++++++++------ 1 file changed, 46 insertions(+), 7 deletions(-) diff --git a/sorts/merge_sort.py b/sorts/merge_sort.py index 11c202788035..42f4f01c651f 100644 --- a/sorts/merge_sort.py +++ b/sorts/merge_sort.py @@ -8,14 +8,34 @@ For manual testing run: python merge_sort.py """ +from typing import Protocol, TypeVar +# CHANGED: Added Comparable Protocol. +# WHY: Merge sort is a comparison-based sorting algorithm, so it should +# support any type of item that can be compared using the < operator, +# not only integers. -def merge_sort(collection: list) -> list: +class Comparable(Protocol): + def __lt__(self, other: object, /) -> bool: ... + +# CHANGED: Added a TypeVar bounded to Comparable. +# WHY: This preserves the input element type while ensuring that the +# elements support comparison. + + +T = TypeVar("T", bound=Comparable) + +# CHANGED: list[int] -> list[T] +# WHY: Merge sort can sort any comparable items such as ints, strings, +# and floats. + + +def merge_sort(collection: list[T]) -> list[T]: """ Sorts a list using the merge sort algorithm. - :param collection: A mutable ordered collection with comparable items. - :return: The same collection ordered in ascending order. + :param collection: A collection with comparable items. + :return: The collection ordered in ascending order. Time Complexity: O(n log n) Space Complexity: O(n) @@ -23,13 +43,25 @@ def merge_sort(collection: list) -> list: Examples: >>> merge_sort([0, 5, 3, 2, 2]) [0, 2, 2, 3, 5] + >>> merge_sort([]) [] - >>> merge_sort([-2, -5, -45]) + + >>> merge_sort([-2, -45, -5]) [-45, -5, -2] + + # CHANGED: Added a string example. + # WHY: Proves merge_sort works with comparable non-integer types. + >>> merge_sort(["c", "a", "b"]) + ['a', 'b', 'c'] + + # CHANGED: Added a float example. + # WHY: Further proves the algorithm is not restricted to integers. + >>> merge_sort([2.5, -1.0, 0.0]) + [-1.0, 0.0, 2.5] """ - def merge(left: list, right: list) -> list: + def merge(left: list[T], right: list[T]) -> list[T]: """ Merge two sorted lists into a single sorted list. @@ -37,9 +69,16 @@ def merge(left: list, right: list) -> list: :param right: Right collection :return: Merged result """ - result = [] + result: list[T] = [] while left and right: - result.append(left.pop(0) if left[0] <= right[0] else right.pop(0)) + # CHANGED: Use only < instead of <=. + # WHY: Comparable guarantees the < operator. Requiring <= + # would unnecessarily require comparable objects to implement + # an additional comparison method. + if right[0] < left[0]: + result.append(right.pop(0)) + else: + result.append(left.pop(0)) result.extend(left) result.extend(right) return result From 982087f3fbabe2abb8c02ee463918bfd216b4c91 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Wed, 9 Sep 2026 19:08:27 +0000 Subject: [PATCH 3/9] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- sorts/merge_sort.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sorts/merge_sort.py b/sorts/merge_sort.py index 42f4f01c651f..940a187e11ea 100644 --- a/sorts/merge_sort.py +++ b/sorts/merge_sort.py @@ -8,6 +8,7 @@ For manual testing run: python merge_sort.py """ + from typing import Protocol, TypeVar # CHANGED: Added Comparable Protocol. @@ -15,9 +16,11 @@ # support any type of item that can be compared using the < operator, # not only integers. + class Comparable(Protocol): def __lt__(self, other: object, /) -> bool: ... + # CHANGED: Added a TypeVar bounded to Comparable. # WHY: This preserves the input element type while ensuring that the # elements support comparison. From a4c0f5514f89a6a4ee2b5564742454f36ef572e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?BHUMIKA=20KADU=E2=9C=A8?= Date: Wed, 9 Sep 2026 19:20:16 +0000 Subject: [PATCH 4/9] sorts: use type parameters in merge sort --- sorts/merge_sort.py | 36 ++---------------------------------- 1 file changed, 2 insertions(+), 34 deletions(-) diff --git a/sorts/merge_sort.py b/sorts/merge_sort.py index 940a187e11ea..2622c52e8721 100644 --- a/sorts/merge_sort.py +++ b/sorts/merge_sort.py @@ -8,32 +8,14 @@ For manual testing run: python merge_sort.py """ - -from typing import Protocol, TypeVar - -# CHANGED: Added Comparable Protocol. -# WHY: Merge sort is a comparison-based sorting algorithm, so it should -# support any type of item that can be compared using the < operator, -# not only integers. +from typing import Protocol class Comparable(Protocol): def __lt__(self, other: object, /) -> bool: ... -# CHANGED: Added a TypeVar bounded to Comparable. -# WHY: This preserves the input element type while ensuring that the -# elements support comparison. - - -T = TypeVar("T", bound=Comparable) - -# CHANGED: list[int] -> list[T] -# WHY: Merge sort can sort any comparable items such as ints, strings, -# and floats. - - -def merge_sort(collection: list[T]) -> list[T]: +def merge_sort[T: Comparable](collection: list[T]) -> list[T]: """ Sorts a list using the merge sort algorithm. @@ -52,16 +34,6 @@ def merge_sort(collection: list[T]) -> list[T]: >>> merge_sort([-2, -45, -5]) [-45, -5, -2] - - # CHANGED: Added a string example. - # WHY: Proves merge_sort works with comparable non-integer types. - >>> merge_sort(["c", "a", "b"]) - ['a', 'b', 'c'] - - # CHANGED: Added a float example. - # WHY: Further proves the algorithm is not restricted to integers. - >>> merge_sort([2.5, -1.0, 0.0]) - [-1.0, 0.0, 2.5] """ def merge(left: list[T], right: list[T]) -> list[T]: @@ -74,10 +46,6 @@ def merge(left: list[T], right: list[T]) -> list[T]: """ result: list[T] = [] while left and right: - # CHANGED: Use only < instead of <=. - # WHY: Comparable guarantees the < operator. Requiring <= - # would unnecessarily require comparable objects to implement - # an additional comparison method. if right[0] < left[0]: result.append(right.pop(0)) else: From 4425c114dc94db4db48f9b80173f31e3867588c3 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Wed, 9 Sep 2026 19:32:24 +0000 Subject: [PATCH 5/9] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- sorts/merge_sort.py | 1 + 1 file changed, 1 insertion(+) diff --git a/sorts/merge_sort.py b/sorts/merge_sort.py index 2622c52e8721..2e33dd90f061 100644 --- a/sorts/merge_sort.py +++ b/sorts/merge_sort.py @@ -8,6 +8,7 @@ For manual testing run: python merge_sort.py """ + from typing import Protocol From 625acaf275a7e5a3c3a5ba05807f31ddc910654a Mon Sep 17 00:00:00 2001 From: Christian Clauss Date: Thu, 10 Sep 2026 00:02:55 +0200 Subject: [PATCH 6/9] Fix grammar in merge sort docstring Corrected minor grammatical errors in docstring. --- sorts/merge_sort.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sorts/merge_sort.py b/sorts/merge_sort.py index 2e33dd90f061..d960c8d7c20b 100644 --- a/sorts/merge_sort.py +++ b/sorts/merge_sort.py @@ -1,11 +1,11 @@ """ -This is a pure Python implementation of the merge sort algorithm. +The merge sort algorithm. -For doctests run following command: +For doctests, run the following command: python -m doctest -v merge_sort.py or python3 -m doctest -v merge_sort.py -For manual testing run: +For manual testing, run: python merge_sort.py """ From 8c178b894f4f13dffb1c4f6650e71bc7b45481d2 Mon Sep 17 00:00:00 2001 From: Christian Clauss Date: Thu, 10 Sep 2026 00:13:12 +0200 Subject: [PATCH 7/9] Update DIRECTORY.md with new algorithms and functions --- DIRECTORY.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/DIRECTORY.md b/DIRECTORY.md index 2b344f964ad6..fa46f377c278 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -87,6 +87,7 @@ * [Count 1S Brian Kernighan Method](bit_manipulation/count_1s_brian_kernighan_method.py) * [Count Number Of One Bits](bit_manipulation/count_number_of_one_bits.py) * [Excess 3 Code](bit_manipulation/excess_3_code.py) + * [Fast Walsh Hadamard Transform](bit_manipulation/fast_walsh_hadamard_transform.py) * [Find Previous Power Of Two](bit_manipulation/find_previous_power_of_two.py) * [Find Unique Number](bit_manipulation/find_unique_number.py) * [Gray Code Sequence](bit_manipulation/gray_code_sequence.py) @@ -251,6 +252,7 @@ * [Basic Binary Tree](data_structures/binary_tree/basic_binary_tree.py) * [Binary Search Tree](data_structures/binary_tree/binary_search_tree.py) * [Binary Search Tree Recursive](data_structures/binary_tree/binary_search_tree_recursive.py) + * [Binary Tree Maximum Path Sum](data_structures/binary_tree/binary_tree_maximum_path_sum.py) * [Binary Tree Mirror](data_structures/binary_tree/binary_tree_mirror.py) * [Binary Tree Node Sum](data_structures/binary_tree/binary_tree_node_sum.py) * [Binary Tree Path Sum](data_structures/binary_tree/binary_tree_path_sum.py) @@ -696,8 +698,6 @@ * [Support Vector Machines](machine_learning/support_vector_machines.py) * [T Stochastic Neighbour Embedding](machine_learning/t_stochastic_neighbour_embedding.py) * [Word Frequency Functions](machine_learning/word_frequency_functions.py) - * [Xgboost Classifier](machine_learning/xgboost_classifier.py) - * [Xgboost Regressor](machine_learning/xgboost_regressor.py) ## [Maths](maths) * [Abs](maths/abs.py) @@ -722,12 +722,15 @@ * [Chebyshev Distance](maths/chebyshev_distance.py) * [Check Polygon](maths/check_polygon.py) * [Chinese Remainder Theorem](maths/chinese_remainder_theorem.py) + * [Cholesky Decomposition](maths/cholesky_decomposition.py) * [Chudnovsky Algorithm](maths/chudnovsky_algorithm.py) * [Collatz Sequence](maths/collatz_sequence.py) * [Combinations](maths/combinations.py) * [Continued Fraction](maths/continued_fraction.py) + * [Convolve 1D](maths/convolve_1d.py) * [Decimal Isolate](maths/decimal_isolate.py) * [Decimal To Fraction](maths/decimal_to_fraction.py) + * [Derangement](maths/derangement.py) * [Dodecahedron](maths/dodecahedron.py) * [Double Factorial](maths/double_factorial.py) * [Dual Number Automatic Differentiation](maths/dual_number_automatic_differentiation.py) @@ -763,8 +766,10 @@ * [Juggler Sequence](maths/juggler_sequence.py) * [Karatsuba](maths/karatsuba.py) * [Kth Lexicographic Permutation](maths/kth_lexicographic_permutation.py) + * [Laplace Transformation](maths/laplace_transformation.py) * [Largest Of Very Large Numbers](maths/largest_of_very_large_numbers.py) * [Least Common Multiple](maths/least_common_multiple.py) + * [Line Intersection](maths/line_intersection.py) * [Line Length](maths/line_length.py) * [Liouville Lambda](maths/liouville_lambda.py) * [Lucas Lehmer Primality Test](maths/lucas_lehmer_primality_test.py) @@ -784,6 +789,7 @@ * [Adams Bashforth](maths/numerical_analysis/adams_bashforth.py) * [Bisection](maths/numerical_analysis/bisection.py) * [Bisection 2](maths/numerical_analysis/bisection_2.py) + * [Brent Method](maths/numerical_analysis/brent_method.py) * [Integration By Simpson Approx](maths/numerical_analysis/integration_by_simpson_approx.py) * [Intersection](maths/numerical_analysis/intersection.py) * [Nevilles Method](maths/numerical_analysis/nevilles_method.py) @@ -799,6 +805,7 @@ * [Square Root](maths/numerical_analysis/square_root.py) * [Weierstrass Method](maths/numerical_analysis/weierstrass_method.py) * [Odd Sieve](maths/odd_sieve.py) + * [Pell Number](maths/pell_number.py) * [Perfect Cube](maths/perfect_cube.py) * [Perfect Number](maths/perfect_number.py) * [Perfect Square](maths/perfect_square.py) @@ -832,7 +839,9 @@ * [Harmonic](maths/series/harmonic.py) * [Harmonic Series](maths/series/harmonic_series.py) * [Hexagonal Numbers](maths/series/hexagonal_numbers.py) + * [Logarithmic Series](maths/series/logarithmic_series.py) * [P Series](maths/series/p_series.py) + * [Sieve Of Atkin](maths/sieve_of_atkin.py) * [Sieve Of Eratosthenes](maths/sieve_of_eratosthenes.py) * [Sigmoid](maths/sigmoid.py) * [Signum](maths/signum.py) @@ -872,12 +881,16 @@ * [Test Factorial](maths/test_factorial.py) * [Test Prime Check](maths/test_prime_check.py) * [Three Sum](maths/three_sum.py) + * [Tonelli Shanks](maths/tonelli_shanks.py) + * [Trailing Zeroes](maths/trailing_zeroes.py) * [Trapezoidal Rule](maths/trapezoidal_rule.py) * [Triplet Sum](maths/triplet_sum.py) * [Twin Prime](maths/twin_prime.py) * [Two Pointer](maths/two_pointer.py) * [Two Sum](maths/two_sum.py) * [Volume](maths/volume.py) + * [Weddles Rule](maths/weddles_rule.py) + * [Weighted Average](maths/weighted_average.py) * [Zellers Congruence](maths/zellers_congruence.py) ## [Matrix](matrix) @@ -1357,6 +1370,7 @@ * [Dutch National Flag Sort](sorts/dutch_national_flag_sort.py) * [Exchange Sort](sorts/exchange_sort.py) * [External Sort](sorts/external_sort.py) + * [Flash Sort](sorts/flash_sort.py) * [Gnome Sort](sorts/gnome_sort.py) * [Heap Sort](sorts/heap_sort.py) * [Insertion Sort](sorts/insertion_sort.py) From a5b5fd18871b49a92d0592471f5c5ec3de1bd28c Mon Sep 17 00:00:00 2001 From: cclauss Date: Wed, 9 Sep 2026 22:13:31 +0000 Subject: [PATCH 8/9] updating DIRECTORY.md --- DIRECTORY.md | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/DIRECTORY.md b/DIRECTORY.md index fa46f377c278..2b344f964ad6 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -87,7 +87,6 @@ * [Count 1S Brian Kernighan Method](bit_manipulation/count_1s_brian_kernighan_method.py) * [Count Number Of One Bits](bit_manipulation/count_number_of_one_bits.py) * [Excess 3 Code](bit_manipulation/excess_3_code.py) - * [Fast Walsh Hadamard Transform](bit_manipulation/fast_walsh_hadamard_transform.py) * [Find Previous Power Of Two](bit_manipulation/find_previous_power_of_two.py) * [Find Unique Number](bit_manipulation/find_unique_number.py) * [Gray Code Sequence](bit_manipulation/gray_code_sequence.py) @@ -252,7 +251,6 @@ * [Basic Binary Tree](data_structures/binary_tree/basic_binary_tree.py) * [Binary Search Tree](data_structures/binary_tree/binary_search_tree.py) * [Binary Search Tree Recursive](data_structures/binary_tree/binary_search_tree_recursive.py) - * [Binary Tree Maximum Path Sum](data_structures/binary_tree/binary_tree_maximum_path_sum.py) * [Binary Tree Mirror](data_structures/binary_tree/binary_tree_mirror.py) * [Binary Tree Node Sum](data_structures/binary_tree/binary_tree_node_sum.py) * [Binary Tree Path Sum](data_structures/binary_tree/binary_tree_path_sum.py) @@ -698,6 +696,8 @@ * [Support Vector Machines](machine_learning/support_vector_machines.py) * [T Stochastic Neighbour Embedding](machine_learning/t_stochastic_neighbour_embedding.py) * [Word Frequency Functions](machine_learning/word_frequency_functions.py) + * [Xgboost Classifier](machine_learning/xgboost_classifier.py) + * [Xgboost Regressor](machine_learning/xgboost_regressor.py) ## [Maths](maths) * [Abs](maths/abs.py) @@ -722,15 +722,12 @@ * [Chebyshev Distance](maths/chebyshev_distance.py) * [Check Polygon](maths/check_polygon.py) * [Chinese Remainder Theorem](maths/chinese_remainder_theorem.py) - * [Cholesky Decomposition](maths/cholesky_decomposition.py) * [Chudnovsky Algorithm](maths/chudnovsky_algorithm.py) * [Collatz Sequence](maths/collatz_sequence.py) * [Combinations](maths/combinations.py) * [Continued Fraction](maths/continued_fraction.py) - * [Convolve 1D](maths/convolve_1d.py) * [Decimal Isolate](maths/decimal_isolate.py) * [Decimal To Fraction](maths/decimal_to_fraction.py) - * [Derangement](maths/derangement.py) * [Dodecahedron](maths/dodecahedron.py) * [Double Factorial](maths/double_factorial.py) * [Dual Number Automatic Differentiation](maths/dual_number_automatic_differentiation.py) @@ -766,10 +763,8 @@ * [Juggler Sequence](maths/juggler_sequence.py) * [Karatsuba](maths/karatsuba.py) * [Kth Lexicographic Permutation](maths/kth_lexicographic_permutation.py) - * [Laplace Transformation](maths/laplace_transformation.py) * [Largest Of Very Large Numbers](maths/largest_of_very_large_numbers.py) * [Least Common Multiple](maths/least_common_multiple.py) - * [Line Intersection](maths/line_intersection.py) * [Line Length](maths/line_length.py) * [Liouville Lambda](maths/liouville_lambda.py) * [Lucas Lehmer Primality Test](maths/lucas_lehmer_primality_test.py) @@ -789,7 +784,6 @@ * [Adams Bashforth](maths/numerical_analysis/adams_bashforth.py) * [Bisection](maths/numerical_analysis/bisection.py) * [Bisection 2](maths/numerical_analysis/bisection_2.py) - * [Brent Method](maths/numerical_analysis/brent_method.py) * [Integration By Simpson Approx](maths/numerical_analysis/integration_by_simpson_approx.py) * [Intersection](maths/numerical_analysis/intersection.py) * [Nevilles Method](maths/numerical_analysis/nevilles_method.py) @@ -805,7 +799,6 @@ * [Square Root](maths/numerical_analysis/square_root.py) * [Weierstrass Method](maths/numerical_analysis/weierstrass_method.py) * [Odd Sieve](maths/odd_sieve.py) - * [Pell Number](maths/pell_number.py) * [Perfect Cube](maths/perfect_cube.py) * [Perfect Number](maths/perfect_number.py) * [Perfect Square](maths/perfect_square.py) @@ -839,9 +832,7 @@ * [Harmonic](maths/series/harmonic.py) * [Harmonic Series](maths/series/harmonic_series.py) * [Hexagonal Numbers](maths/series/hexagonal_numbers.py) - * [Logarithmic Series](maths/series/logarithmic_series.py) * [P Series](maths/series/p_series.py) - * [Sieve Of Atkin](maths/sieve_of_atkin.py) * [Sieve Of Eratosthenes](maths/sieve_of_eratosthenes.py) * [Sigmoid](maths/sigmoid.py) * [Signum](maths/signum.py) @@ -881,16 +872,12 @@ * [Test Factorial](maths/test_factorial.py) * [Test Prime Check](maths/test_prime_check.py) * [Three Sum](maths/three_sum.py) - * [Tonelli Shanks](maths/tonelli_shanks.py) - * [Trailing Zeroes](maths/trailing_zeroes.py) * [Trapezoidal Rule](maths/trapezoidal_rule.py) * [Triplet Sum](maths/triplet_sum.py) * [Twin Prime](maths/twin_prime.py) * [Two Pointer](maths/two_pointer.py) * [Two Sum](maths/two_sum.py) * [Volume](maths/volume.py) - * [Weddles Rule](maths/weddles_rule.py) - * [Weighted Average](maths/weighted_average.py) * [Zellers Congruence](maths/zellers_congruence.py) ## [Matrix](matrix) @@ -1370,7 +1357,6 @@ * [Dutch National Flag Sort](sorts/dutch_national_flag_sort.py) * [Exchange Sort](sorts/exchange_sort.py) * [External Sort](sorts/external_sort.py) - * [Flash Sort](sorts/flash_sort.py) * [Gnome Sort](sorts/gnome_sort.py) * [Heap Sort](sorts/heap_sort.py) * [Insertion Sort](sorts/insertion_sort.py) From cde5a417814e6b2c7b37f1844636363233a28a4a Mon Sep 17 00:00:00 2001 From: cclauss Date: Wed, 9 Sep 2026 22:15:24 +0000 Subject: [PATCH 9/9] updating DIRECTORY.md --- DIRECTORY.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/DIRECTORY.md b/DIRECTORY.md index fa46f377c278..e8c970627dcd 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -1354,11 +1354,13 @@ * [Ternary Search](searches/ternary_search.py) ## [Sorts](sorts) + * [Adaptive Merge Sort](sorts/adaptive_merge_sort.py) * [Bead Sort](sorts/bead_sort.py) * [Binary Insertion Sort](sorts/binary_insertion_sort.py) * [Bitonic Sort](sorts/bitonic_sort.py) * [Bogo Sort](sorts/bogo_sort.py) * [Bubble Sort](sorts/bubble_sort.py) + * [Bubble Sort Recursive](sorts/bubble_sort_recursive.py) * [Bucket Sort](sorts/bucket_sort.py) * [Circle Sort](sorts/circle_sort.py) * [Cocktail Shaker Sort](sorts/cocktail_shaker_sort.py) @@ -1376,6 +1378,7 @@ * [Insertion Sort](sorts/insertion_sort.py) * [Intro Sort](sorts/intro_sort.py) * [Iterative Merge Sort](sorts/iterative_merge_sort.py) + * [Kirkpatrick Reisch Sort](sorts/kirkpatrick_reisch_sort.py) * [Merge Insertion Sort](sorts/merge_insertion_sort.py) * [Merge Sort](sorts/merge_sort.py) * [Msd Radix Sort](sorts/msd_radix_sort.py) @@ -1387,16 +1390,20 @@ * [Patience Sort](sorts/patience_sort.py) * [Pigeon Sort](sorts/pigeon_sort.py) * [Pigeonhole Sort](sorts/pigeonhole_sort.py) + * [Power Sort](sorts/power_sort.py) * [Quick Sort](sorts/quick_sort.py) * [Quick Sort 3 Partition](sorts/quick_sort_3_partition.py) * [Radix Sort](sorts/radix_sort.py) * [Recursive Insertion Sort](sorts/recursive_insertion_sort.py) * [Recursive Mergesort Array](sorts/recursive_mergesort_array.py) * [Recursive Quick Sort](sorts/recursive_quick_sort.py) + * [Reverse Selection](sorts/reverse_selection.py) + * [Reversort](sorts/reversort.py) * [Selection Sort](sorts/selection_sort.py) * [Shell Sort](sorts/shell_sort.py) * [Shrink Shell Sort](sorts/shrink_shell_sort.py) * [Slowsort](sorts/slowsort.py) + * [Smoothsort](sorts/smoothsort.py) * [Stalin Sort](sorts/stalin_sort.py) * [Stooge Sort](sorts/stooge_sort.py) * [Strand Sort](sorts/strand_sort.py)