Commit Graph

1724 Commits

Author SHA1 Message Date
github-actions[bot]
34e7231b88 docs: update DIRECTORY.md (#2898)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-11-06 21:40:38 +05:30
realstealthninja
8b1eab204b doc: Use the doxygen awesome theme (#2807)
* chore: remove cppreference

* feat: add doxyfile

* feat: add doxygen-awesome theme

* chore: remove unneccessary doxygen config form cmake

* test: for doxygen test purposes

Note: revert before merging to main

* fix: try removing css from rm

* fix: set style sheet via cmake

* feat: make doxygen theme finally work

* fix: remove mathjax from doxyfile

* feat: add  sidebar and make mathjax work

* doc: add transparency and make output svg of dot

* fix: make dots interactive

* chore: move math jax from cmake to doxyfile

* feat: add header file

* chore: add header file to cmake

* chore: remove redundant transparency config

* fix: force cmake to use config file

* chore: remove working directory

* fix: use old add_docs command

* feat: fix doxygen build

* fix: re enable clang assited parsing

* fix: use relative paths

* fix: relative paths arent necessary

* feat: add project logo and favicon

* fix: revert gh-pages to master

* fix: add dot to doxyfile

* fix: add lib clang to doxygen

* fix: use source browser

* fix: add clang as compiler

* docs: remove headers from source browser

* revert: branch to master
2024-11-04 18:11:14 +05:30
realstealthninja
0d766b0f8a feat: update to CXX standard 17 and add CMakeLists file to directories without them (#2746)
* chore: add cache and build comment to git ignore

* fix: add cmakelists to dynamic programming

* fix: add cmakelists to greedy_algorithms

* fix: add cmakelists to operations_on_datastructures

* fix: add cmakelists to range_queries

* fix: add `dynamic_programmin`, `greedy_algorithms`, `range_queries` and `operations_on_datastructures` subdirectories to cmakelists.txt

* fix: init of transform_reduce in dynamic_programming

* fix: add an include for functional in catalan_numbers

* chore: bump CXX standard to 20

* revert: bump CXX standard to 20

* chore: bump c++ version to 17 and add justification

Arm supports c++ 17
Esp32 supports c++ 23
decision was made to be 17 because it seemed to offer the best combatability

* fix: compilation error in catalan numbers

* fix: add <set> header to longest increasing subsequence nlogn

* fix: add cmath & algorithm header to mo.cpp

* fix: remove register key word from fast integer

* fix: replace using namespace std with std::cin and std::cout

* docs: typo in c++17

* fix: memory leak in bellman_ford

* fix: typo in bellman_ford

* fix: typo in word_break

* fix: dynamic array in coin_change

* fix dynamic array in egg_dropping puzzle

* chore: remove unnecessary comment

* fix: add vla to be an error

* chore: add extra warnings

* fix: use add_compile options instead of set()

* fix: compile options are not strings

* fix: vla in floyd_warshall

* fix: vla in egg_dropping_puzzel

* fix: vla in coin_change

* fix: vla in edit_distance

* fix: vla in floyd_warshall

* feat: remove kadane and replace it with kadane2

* fix: vla in longest_common_subsequence

* fix: int overflow in floyd_warshall

* fix: vla in lisnlogn

* fix: use const vector& instead of array

* fix: use dynamic array instead of vla in knapsack

* fix: use of and in msvc is unsupported by default adding permissive flag fixes it

* test: make executables the tests themselves

* Revert "test: make executables the tests themselves"

This reverts commit 7a16c31c4e.

* fix: make dist constant in print

* fix: namespace issue in unbounded_0_1

* fix: include cstdint to fix compilation
2024-11-04 18:00:20 +05:30
realstealthninja
c6af943508 fix: add cstdint header to all files using fixed width integers (#2717)
* fix: add <cstdint> to subset_sum.cpp

* fix: add <cstdint> to subarray_sum.cpp

* fix: add <cstdint> to wildcard_matching.cpp

* fix: add <cstdint> to count_bit_flips.cpp

* fix: add <cstdint> to count_of_set_bits.cpp

* fix: add <cstdint> to trailing_ciphers.cpp

* fix: add <cstdint> to hamming_distance.cpp

* doc: include doc for hamming_distance

* fix: add <cstdint> to next_higher_numebr_with_same_number_of_set_bits.cpp

* fix: add <cstdint> to power_of_2.cpp

* fix: add <cstdint> to set_kth_bit.cpp

* fix: add <cstdint> to bit_manipulation/set_kth_bit.cpp

* fix: add <cstdint> to bit_manipulation/travelling_salesman_using_bit_manipulation.cpp

* fix: add <cstdint> to ciphers/base64_encoding.cpp

* fix: add <cstdint> to ciphers/hill_cipher.cpp

* fix: add <cstdint> to ciphers/uint128_t.hpp

* fix: add <cstdint> to data_structures/dsu_path_compression.cpp

* fix: add <cstdint> to data_structures/dsu_path_compression.cpp

* fix add <cstdint> to datastructures/list_array>cpp

* fix add <cstdint> to datastructures/queue_using_array.cpp

* fix: add <cstdint> to sparse_table.cpp

* fix: add <cstdint> to stack_using_list_queue.cpp

* fix: add <cstdint> to treap.cpp

* fix: add <cstdint> to graham_scan_functions.hpp

* fix: add <cstdint> to graph/**

* fix: add integral typdefs to hashing/**

* fix: add <cstdint> to math/**

* fix: add <cstdint> to numerical_methods/**

* fix: add <cstdint> to other/**

* fix: add <cstdint> to search/**

* fix: add <cstdint> to sorting/**

* fix: add <cstdint> to string/**

* doc: remove include statement from comment

* fix: make tests static

Co-authored-by: David Leal <halfpacho@gmail.com>

* fix: make tests static

Co-authored-by: David Leal <halfpacho@gmail.com>

* chore: use iwyu on backtracking/**.cpp

* chore: use iwyu on bit_manip/**.cpp

* chore: use iwyu on ciphers/**.cpp

* chore: use iwyu on cpu_scheduling_algorithms/**.cpp

* chore: use iwyu on data_structures/**.cpp

* chore: use iwyu on divide_and_conquer/**.cpp

* chore: use iwyu on geometry/**.cpp

* chore: use iwyu on graph/**.cpp

* chore: use iwyu on hashing/**.cpp

* chore: use iwyu on machine_learning/**.cpp

* chore: use iwyu on math/**.cpp

* chore: use iwyu on numerical_methods/**.cpp

* chore: use iwyu on others/**.cpp

* chore: use iwyu on probablity/**.cpp

* chore: use iwyu on search/**.cpp

* chore: use iwyu on sorting/**.cpp

* chore: use iwyu on strings/**.cpp

* Revert "chore: use iwyu on strings/**.cpp"

This reverts commit f2127456a8.

* Revert "chore: use iwyu on sorting/**.cpp"

This reverts commit a290ae7ee2.

* Revert "chore: use iwyu on search/**.cpp"

This reverts commit 19d136ae0f.

* Revert "chore: use iwyu on probablity/**.cpp"

This reverts commit 5dd7f82a34.

* Revert "chore: use iwyu on others/**.cpp"

This reverts commit 8a8fd42383.

* Revert "chore: use iwyu on numerical_methods/**.cpp"

This reverts commit eff2f44a50.

* Revert "chore: use iwyu on math/**.cpp"

This reverts commit c47117ca3f.

* Revert "chore: use iwyu on machine_learning/**.cpp"

This reverts commit c3897d3763.

* Revert "chore: use iwyu on hashing/**.cpp"

This reverts commit 0c6611a835.

* Revert "chore: use iwyu on graph/**.cpp"

This reverts commit dabd6d2591.

* Revert "chore: use iwyu on geometry/**.cpp"

This reverts commit 740bd65932.

* Revert "chore: use iwyu on divide_and_conquer/**.cpp"

This reverts commit 16ee49e086.

* Revert "chore: use iwyu on data_structures/**.cpp"

This reverts commit a3b719e368.

* Revert "chore: use iwyu on cpu_scheduling_algorithms/**.cpp"

This reverts commit 24e597f7e2.

* Revert "chore: use iwyu on ciphers/**.cpp"

This reverts commit 3d80295883.

* Revert "chore: use iwyu on bit_manip/**.cpp"

This reverts commit 7edcb6e458.

* Revert "chore: use iwyu on backtracking/**.cpp"

This reverts commit f0a30d7cdb.

* Update search/binary_search.cpp

* Update backtracking/subarray_sum.cpp

* Update backtracking/subset_sum.cpp

* Update backtracking/wildcard_matching.cpp

* Update bit_manipulation/count_bits_flip.cpp

* Update bit_manipulation/count_of_set_bits.cpp

* Update bit_manipulation/count_of_trailing_ciphers_in_factorial_n.cpp

* Update bit_manipulation/hamming_distance.cpp

* Update bit_manipulation/next_higher_number_with_same_number_of_set_bits.cpp

* Update bit_manipulation/power_of_2.cpp

* Update others/lru_cache.cpp

* Update bit_manipulation/set_kth_bit.cpp

* Update bit_manipulation/travelling_salesman_using_bit_manipulation.cpp

* Update ciphers/base64_encoding.cpp

* Update ciphers/hill_cipher.cpp

* Update ciphers/uint128_t.hpp

* Update cpu_scheduling_algorithms/fcfs_scheduling.cpp

* Update data_structures/dsu_path_compression.cpp

* Update data_structures/dsu_union_rank.cpp

* Update data_structures/list_array.cpp

* Update data_structures/queue_using_array.cpp

* Update data_structures/sparse_table.cpp

* Update data_structures/stack_using_queue.cpp

* Update data_structures/treap.cpp

* Update geometry/graham_scan_functions.hpp

* Update graph/bidirectional_dijkstra.cpp

* Update graph/connected_components_with_dsu.cpp

* Update graph/cycle_check_directed_graph.cpp

* Update graph/is_graph_bipartite2.cpp

* Update graph/travelling_salesman_problem.cpp

* Update hashing/md5.cpp

* Update hashing/sha1.cpp

* Update math/n_choose_r.cpp

* Update strings/z_function.cpp

* Update strings/manacher_algorithm.cpp

* Update sorting/wiggle_sort.cpp

* Update sorting/selection_sort_recursive.cpp

* Update sorting/selection_sort_iterative.cpp

* Update sorting/recursive_bubble_sort.cpp

* Update sorting/radix_sort2.cpp

* Update sorting/dnf_sort.cpp

* Update sorting/cycle_sort.cpp

* Update search/sublist_search.cpp

* Update search/saddleback_search.cpp

* Update search/interpolation_search.cpp

* Update search/floyd_cycle_detection_algo.cpp

* Update search/exponential_search.cpp

* Update search/exponential_search.cpp

* Update math/n_bonacci.cpp

* Update math/aliquot_sum.cpp

* Update math/check_factorial.cpp

* Update math/double_factorial.cpp

* Update math/eulers_totient_function.cpp

* Update math/factorial.cpp

* Update math/fibonacci.cpp

* Update math/fibonacci_matrix_exponentiation.cpp

* Update math/fibonacci_sum.cpp

* Update math/finding_number_of_digits_in_a_number.cpp

* chore: remove "/// for integral typedefs"

* chore: remove for integral typedefs from modular division

* fix: remove comment from include

* fix: add cstdint to gale shapely

---------

Co-authored-by: David Leal <halfpacho@gmail.com>
2024-11-04 17:38:54 +05:30
github-actions[bot]
9b1d7024af docs: update DIRECTORY.md (#2896)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-11-03 19:44:03 +05:30
github-actions[bot]
5fd64423de docs: updating DIRECTORY.md (#2875)
* docs: update DIRECTORY.md

* docs: update DIRECTORY.md

* clang-format and clang-tidy fixes for d0663990

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-11-02 23:30:26 +05:30
Harshil Shah
85d62bb80d docs, test: Fit Topological Sort algorithm to contributing guidelines (#2835)
* Modified docs,test of topological sort algorithm

* Update topological_sort.cpp

* Add class "Graph"

* Update graph/topological_sort.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Add namespace topological_sort

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-11-01 22:51:52 +05:30
Ritobroto Kalita
649a145234 docs, test: Fit Sieve of Eratosthenes to contributing guidelines (#2803)
* Update sieve_of_eratosthenes.cpp

* Update doc

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-29 22:38:49 +05:30
Sanskruti Pravin Yeole
db3f9d3406 Create Unbounded_knapsack.cpp (#2786)
* Create Unbounded_knapsack.cpp

* Update Unbounded_knapsack.cpp

Documentation done.

* Update dynamic_programming/Unbounded_knapsack.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update dynamic_programming/Unbounded_knapsack.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update dynamic_programming/Unbounded_knapsack.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update dynamic_programming/Unbounded_knapsack.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Delete dynamic_programming/Unbounded_knapsack.cpp

* Create Unbounded_0_1_Knapsack.cpp

* Update Unbounded_0_1_Knapsack.cpp

* Update Unbounded_0_1_Knapsack.cpp

* docs: add docs for main

* Update dynamic_programming/Unbounded_0_1_Knapsack.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update dynamic_programming/Unbounded_0_1_Knapsack.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update Unbounded_0_1_Knapsack.cpp

* Update Unbounded_0_1_Knapsack.cpp

* Update Unbounded_0_1_Knapsack.cpp

* Update dynamic_programming/Unbounded_0_1_Knapsack.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update Unbounded_0_1_Knapsack.cpp

* Update Unbounded_0_1_Knapsack.cpp

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-28 21:21:55 +05:30
Muhammad Junaid Khalid
ecb8a3388d feat: Added Binary Addition Algorithm (#2802)
* Digit Separation Algorithm added

* feat: Added namespace greedy_algoriithms

* "Updated digit separation code: added comments and docstrings, changed data types to std::int64_t, and reformatted code."

* feat: Made test function and removed extra whitespaces

* removed some more whitespaces

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* fix: terminate multiline comment

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Corrected test function

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* remove redundant declaration

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Corrected tests

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* file clang linted

* "Moved method implementations from outside to inside class definition"

* fowardOrder to forwardOrder on line 122

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Removed Class scope resolution form digitSeparationReverseOrder function

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Removed Class scope resolution form digitSeparationForwardOrderfunction

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* docs: documentation updated

* initial commit of Binary Addition

* "Formatting changes and whitespace adjustments in binary_addition.cpp"

* Documentation added

* fix: removed unnecessary whitespaces

* fix: Fixed the case of non binary strings

* clang linted

* docs: Documentation updated

* Comments updated

* Removed link

Removed @see link in header documentation

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* clang-format and clang-tidy fixes for cd8a5953

* made `tests()` static

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* added @returns in documentation of tests function

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* added @return in documentation of main function

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-24 21:54:38 +05:30
deDSeC00720
ffef54470d feat: LRU (Least recently used) cache - different implementation (#2783)
* feat: add lru cache

* test: add test to cover exception

* test: add assert for exception message

* review: change int to uint32_t

* review: add header for std::uint32_t

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-22 19:34:52 +05:30
Nguyen Phuc Chuong
37a9811372 docs, test: fit modular inverse fermat little theorem to contributing guidelines (#2779)
* Update modular_inverse_fermat_little_theorem.cpp

* Update modular_inverse_fermat_little_theorem.cpp

* Update modular_inverse_fermat_little_theorem.cpp

* Update modular_inverse_fermat_little_theorem.cpp

* Update math/modular_inverse_fermat_little_theorem.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update math/modular_inverse_fermat_little_theorem.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update modular_inverse_fermat_little_theorem.cpp

Add time complexity in comment

* Update modular_inverse_fermat_little_theorem.cpp

* Update modular_inverse_fermat_little_theorem.cpp

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-21 18:51:23 +05:30
github-actions[bot]
d438f0fc7f docs: update DIRECTORY.md (#2857)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-19 15:22:15 +05:30
Naman Jain
05d784d844 Longest Increasing subsequence using binary search most optimal approach (Modified) (#2776)
* Longest Increasing subsequence using binary search most optimal approach for this problem

* Longest Increasing subsequence using binary search most optimal approach for this problem

* Longest Increasing subsequence using binary search most optimal approach for this problem (Modified)

* Longest Increasing subsequence using binary search most optimal approach for this problem

* Longest Increasing subsequence using binary search most optimal approach for this problem(done)

* Longest Increasing subsequence using binary search most optimal approach for this problem

* Floyd warshall

* Longest Increasing subsequence using binary search most optimal approach for this problem

* Longest Increasing subsequence using binary search most optimal approach for this problem

* Longest Increasing subsequence using binary search most optimal approach for this problem

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-18 21:59:49 +05:30
github-actions[bot]
e841605280 docs: update DIRECTORY.md (#2827)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-14 18:49:11 +05:30
Harshil Shah
c2adc3b1e6 feat: Added Exponential Probability Distribution (#2780)
* Add Exponential Distribution

* Modified the documentation

* Update Documentation

* Update probability/exponential_dist.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update probability/exponential_dist.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update probability/exponential_dist.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update the files

* Removed the link from documentation

* docs: remove the second brief tag

* Update latex notation

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update latex notation

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Corrected format issues

* Update probability/exponential_dist.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update probability/exponential_dist.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update probability/exponential_dist.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Added more test, formatted with clang-format

* Update files

* Update format issues

* Add more tests

* Added namespaces

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-13 00:09:50 +05:30
Nguyen Phuc Chuong
136e6c0ad8 docs, test: Fit bubble_sort into guidelines and enhance bubble sort algorithm (#2800)
* Update bubble_sort.cpp

* Update bubble_sort.cpp

* Update bubble_sort.cpp

Add latex notation

* Update sorting/bubble_sort.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update sorting/bubble_sort.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update bubble_sort.cpp

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-11 09:57:30 +05:30
github-actions[bot]
49ee852d06 docs: update DIRECTORY.md (#2810)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-11 09:52:18 +05:30
Ashish Kumar Sahoo
5eff2b9e2b Create Longest_Substring_Without_Repeating_Characters.cpp (#2761)
* Create Longest_Substring_Without_Repeating_Characters.cpp

* I would like to contribute for sliding window algorithm and this one is one of the famous problem that is asked in interviews.

* Thank you!!.

* Update and rename Longest_Substring_Without_Repeating_Characters.cpp to sliding-window/Longest_Substring_Without_Repeating_Characters.cpp

* This is my contribution towards the sliding window algorithm/s and this is one of the famous problems.

* Thank you.

* Update Longest_Substring_Without_Repeating_Characters.cpp

* I would like to contribute towards the sliding window algorithm in which this is one of the famous problem asked in interviews.

* Thank you.

* Update Longest_Substring_Without_Repeating_Characters.cpp

* Updated certain changes in documentation, this is my contribution towards sliding window algorithm this is one of the famous interview problem.

* Thank you.

* Update Longest_Substring_Without_Repeating_Characters.cpp

* Well documented and tested code for sliding window algorithm.

* Thank you.

* Update and rename Longest_Substring_Without_Repeating_Characters.cpp to Longest_Substring_Without_Repeating_Characters.cpp

* So,I did a small change I added the problem into the others section I think this works fine I guess.

* I would be glad if this can be tagged as hackoctoberfest 

* Thank you.

* Update and rename Longest_Substring_Without_Repeating_Characters.cpp to longest_substring_without_repeating_characters.cpp

* I hope I have done the required changes.

* Update longest_substring_without_repeating_characters.cpp

* Added specific edge cases and tests as void tests() and followed the guidelines.

* Update longest_substring_without_repeating_characters.cpp

* I hope I have made the necessary changes required.

* If there are any changes to make I can do that.

* Thank you.

* Update longest_substring_without_repeating_characters.cpp

* I have done the required changes for the include part.

* Thank you.

* Update longest_substring_without_repeating_characters.cpp

added author name

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-10 19:58:50 +05:30
github-actions[bot]
34d3568b37 docs: update DIRECTORY.md (#2804)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-10 17:16:19 +05:30
Ritobroto Kalita
512efd1861 fix: Update documentations and tests for fibonacci.cpp (#2793)
* Update fibonacci.cpp

* update documentation

* Update documentation
2024-10-09 18:45:12 +05:30
Dhanush S
faff2177c8 feat: add recursive inserstion sort (#2764)
* added recursive insertion sort algorithm

* Modified the main function and removed user interaction as requested

* Deleted previous file

* Updated insertion_sort.cpp to its original code

* Created insertion_sort_recursive.cpp file

* Updated documentation and structure in  insertion_sort_recursive.cpp

* Updated documentation in  insertion_sort_recursive.cpp

* chore: remove redundant comment

* chore:Removed unnecssary whitespace

* doc: ease the brief of test

* doc: remove redundant lines from main

* chore:Removed redundant whitespace

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-08 19:34:42 +05:30
Muhammad Junaid Khalid
dd36279e73 feat: Digit Separation Algorithm added (#2759)
* Digit Separation Algorithm added

* feat: Added namespace greedy_algoriithms

* "Updated digit separation code: added comments and docstrings, changed data types to std::int64_t, and reformatted code."

* feat: Made test function and removed extra whitespaces

* removed some more whitespaces

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* fix: terminate multiline comment

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Corrected test function

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update greedy_algorithms/digit_separation.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* remove redundant declaration

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Corrected tests

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* file clang linted

* "Moved method implementations from outside to inside class definition"

* fowardOrder to forwardOrder on line 122

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Removed Class scope resolution form digitSeparationReverseOrder function

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Removed Class scope resolution form digitSeparationForwardOrderfunction

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* docs: documentation updated

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-07 19:09:23 +05:30
deDSeC00720
821d20c33a feat: LFU (Least frequently used) cache (#2757)
* feat: add lfu cache

* docs: add comments and explanation to class LFUCache

* test: add tests for class lfu cache

* docs: document namespace and classes

* test: modify tests to check negative numbers

* docs: document template params and class data members

* test: make test func static and move tests in the same func

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-07 19:02:52 +05:30
Nguyen Phuc Chuong
fddedd8864 fix: Adding documentations, tests, and amending algorithm for gcd_of_n_numbers.cpp (#2766)
* Update gcd_of_n_numbers.cpp

* Update gcd_of_n_numbers.cpp

Reformatting code, comment and test cases, change array data type.

* Update gcd_of_n_numbers.cpp

* Update gcd_of_n_numbers.cpp

* Update gcd_of_n_numbers.cpp

* Update gcd_of_n_numbers.cpp
2024-10-07 18:56:25 +05:30
Harshil Shah
b957b1dfef feat: Add hemi-sphere area algorithm (#2767)
* Add area of hemi-sphere

* Update math/area.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-07 06:15:29 +05:30
github-actions[bot]
f9fb58fb87 docs: update DIRECTORY.md (#2771)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-06 08:09:04 +05:30
Amine Ghoussaini
60093d70ab feat: add duval's algorithm (#2725)
* feat: Add Duval's algorithm for the lexicographically smallest rotation in a sequence.

* fixes.

* fixes.
2024-10-05 18:22:02 +05:30
jiya
0ecb6bd28a docs: reword binary search (#2752)
* Update binary_search.cpp

making some correction in the theory of binary search

* Update search/binary_search.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-05 08:08:23 +05:30
github-actions[bot]
51be6aad33 docs: update DIRECTORY.md (#2754)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-04 23:52:19 +05:30
Divyansh-jain2
c56496d9f2 chore: use M_PI instead of PI parameter (#2747)
* changed PI variable value from 3.14 to M_PI

* changed PI variable to M_PI

* changed the degree_to_radians function

* comments removed

* docs: remove pi param

* fix: typo in function name

* changed degree to degrees

---------

Co-authored-by: [Divyansh Jain] <[jdivyansh51@gmail.com]>
Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-04 22:33:44 +05:30
B Karthik
901f231d59 feat: Added gale_shapley.cpp in greedy_algorithms (#2743)
* Added gale_shapley.cpp in greedy_algorithms

* Added gale_shapley.cpp in greedy_algorithms

* Genralized GaleShapley with reviewed change

* fix: added description

* fix: fixed nameing of namespace

* fix: reviewed changes

* fix: reviewed changes

* TestCase Empty vector

* function description

* Update greedy_algorithms/gale_shapley.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update greedy_algorithms/gale_shapley.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Change type

* typechange with header documentation

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-10-04 18:48:54 +05:30
Nguyen Phuc Chuong
cde1672dca feat: Create gray_code.cpp (#2750)
* Create gray_code.cpp

* Update gray_code.cpp

Remove extra lines, add bit_manipulation and gray_code namespaces, add negative number test
2024-10-04 18:39:03 +05:30
Piotr Idzik
f789e3bb9e style: cleanup catalan_numbers.cpp (#2740)
* style: cleanup `catalan_numbers.cpp`

* docs: update file level docs

* style: use `std::transform_reduce`
2024-09-29 19:24:02 +05:30
Piotr Idzik
9374b00319 style: add missing const in median_search2.cpp (#2734) 2024-09-17 21:54:35 +05:30
Piotr Idzik
a0b7dee79e style: lint huffman.cpp (#2733) 2024-09-15 14:24:44 +05:30
Piotr Idzik
8df7a884f5 fix: remove memory leak from circular_queue_using_linked_list.cpp (#2731) 2024-09-14 05:09:03 +05:30
Monalisa0311
920b6d4e81 Added test cases in greedy_algorithms\kruskals_minimum_spanning_tree.cpp (#2727)
* Added test cases in greedy_algorithms\kruskals_minimum_spanning_tree.cpp

* Update kruskals_minimum_spanning_tree.cpp

test case1 & 2 changed

* Update kruskals_minimum_spanning_tree.cpp

test-case1 changed

* Update kruskals_minimum_spanning_tree.cpp

All test case formatting changes

* Update kruskals_minimum_spanning_tree.cpp

unit-32 test case added

* Update kruskals_minimum_spanning_tree.cpp

added new line

* Update kruskals_minimum_spanning_tree.cpp

Formatting changed

* Update kruskals_minimum_spanning_tree.cpp

move infinity valued inside test

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-09-13 12:23:29 +05:30
Piotr Idzik
b169269c94 fix: remove memory leak from reverse_binary_tree.cpp (#2730) 2024-09-13 08:02:43 +05:30
Piotr Idzik
7828b8e238 fix: memory leak in morrisinorder.cpp (#2729) 2024-09-12 05:00:09 +05:30
Piotr Idzik
d74f4d33ea fix: memory leak in huffman.cpp (#2728) 2024-09-11 06:55:42 +05:30
Piotr Idzik
15e3fed924 style: add missing const in bloom_filter.cpp (#2724)
Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-09-05 05:24:16 +05:30
Sebastian Skonieczny
ef209dfab3 Added Iterative Quick Sort (#2684)
* feat: Added iterative quick sort using stack

* fix: Forgot to add @param for sort function

* Update sorting/quick_sort_iterative.cpp

* Update sorting/quick_sort_iterative.cpp

* Update sorting/quick_sort_iterative.cpp

* style: space b/w for and comment

* Update sorting/quick_sort_iterative.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Update sorting/quick_sort_iterative.cpp

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* fixed namespace error

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-09-05 05:14:41 +05:30
Piotr Idzik
490974eeb3 fix: memory leak in median_search2.cpp (#2723) 2024-09-04 05:31:30 +05:30
Piotr Idzik
c652c4f237 fix: stack buffer underflow in tim_sort.cpp (#2722) 2024-09-03 17:14:49 +05:30
Piotr Idzik
b6108e494d fix: remove memory leak from recursive_tree_traversal.cpp (#2721) 2024-09-02 18:12:26 +05:30
Maxim Smolskiy
db182d5521 fix: fix bug in timSort (#2692)
* fix: fix bug in timSort

* Apply suggestions from code review

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>

* Fix

* Update sorting/tim_sort.cpp

* Add const

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-09-02 04:42:33 +05:30
Piotr Idzik
52db277fb6 fix: remove memory leak from iterative_tree_traversals.cpp (#2720) 2024-09-02 04:33:19 +05:30
SOZEL
54a20b447e Rework on Stack Array Data Structure (#2683)
* ref: rework on stack array data structure
- The `Stack` class is placed within the `data_structures` namespace
- The destructor is added to the Stack class to ensure memory deallocation
- Comments are added to the member functions to describe their purpose
- The self-test function is provided, which demonstrates the usage of the Stack class

* chore(docs): add `namespace` docstring

* chore: add `std::out_of_range` exception and test cases when stack is empty

* ref: add `full` and `empty` methods

* ref: improve stack array implementation
- Use TOS instead of stack index
- Add tests for overflow and underflow

* fix: remove comparision to true from asserts

* chore: remove `stack.hpp`

* fix: revert

* Update data_structures/stack_using_array.cpp

* docs: add namespace comment

* chore: remove redundant line in docstring of `empty` method

---------

Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-09-01 10:07:27 +05:30
github-actions[bot]
fe41cf4d11 docs: update DIRECTORY.md (#2718)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
2024-09-01 09:54:27 +05:30