1. Typographical Error in Doxygen Comment
In the Doxygen comment at the beginning of the file, "Merege Sort" should be corrected to "Merge Sort".
2. Merging Logic
In the merge function, the merging logic can lead to out-of-bounds access if both sub-arrays have been completely traversed. The condition in the while loop should ensure that you only access elements of L and R if they are within bounds:
3. Memory Management
Using new and delete[] for the temporary arrays (L and R) is fine, but you can also use std::vector from the C++ Standard Library to simplify memory management:
4. Input Validation
You should consider adding input validation when reading the number of elements and the actual elements to avoid undefined behavior.
5. Main Function Improvements
You can also enhance the main function by encapsulating the input logic in a separate function, improving readability.
Co-authored-by: realstealthninja <68815218+realstealthninja@users.noreply.github.com>
* 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>
* feat: add Stooge sort algorithm
* docs: add documentation for function parameters and includes
* test: add new tests for the Stooge sort
* docs: Update functions descriptions
* fix: Update parameter type to size_t
* doc: Add message that the tests have passed
* fix: Update return statement structure
---------
Co-authored-by: David Leal <halfpacho@gmail.com>
* Finding no. of digits in a Number
* Initialize n
* Initialize n as int
* Changes done
* Changes done with codes by adding more comments
* Changes done with codes by adding name as md
* Modified comments
* add void
* remove void & update comments
* Set some changes to pass Awesome CI Workflow
* add return 0 & file name in lower case
* Changes done..
* Update finding_number_of_Digits_in_a_Number.cpp
* Update finding_number_of_Digits_in_a_Number.cpp
* Update finding_number_of_Digits_in_a_Number.cpp
* formatting filenames 0ec45e33
* updating DIRECTORY.md
* clang-format and clang-tidy fixes for 0ec45e33
* clang-format and clang-tidy fixes for 9c0a437e
* updating DIRECTORY.md
* Wrote test, needs review
* [fix/docs]: Fix tests/code and add documentation
Co-authored-by: David Leal <halfpacho@gmail.com>
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* feat: add random pivot quick sort algorithm, test cases included
* updating DIRECTORY.md
* docs: add proper docs for random pivot quick sort algorithm, code reformatted.
* fix: copy constructor bug fixed for TestCase class for random pivot quick sort algo
* docs and code reformatted according to standards
* c-style array declarations removed
* added minor suggestion in docs
* resource link added in docs
* docs formatted
* test function's docs added, using stl function for swap
* generator function migrated to namespace
* Update sorting/random_pivot_quick_sort.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/random_pivot_quick_sort.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/random_pivot_quick_sort.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* docs fixed sorting/random pivot quick sort
* Apply suggestions from code review
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
Co-authored-by: David Leal <halfpacho@gmail.com>
* Create count_inversions.cpp
Counts the number of inversions in a list using merge sort. The number of Inversions in a list is the measure of the list's proximity to being sorted in ascending/increasing order.
* Update count_inversions.cpp
- fixed template error on line 156
- an added test case for character array
- an added test case for list type double
* Update sorting/count_inversions.cpp
Co-authored-by: Taj <tjgurwara99@users.noreply.github.com>
* Update sorting/count_inversions.cpp
Co-authored-by: Taj <tjgurwara99@users.noreply.github.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* updating DIRECTORY.md
* clang-format and clang-tidy fixes for b51af5e8
* using `uint64_t` from cstdint header
and doxygen formatiing
* clang-format and clang-tidy fixes for 047578bb
* Update count_inversions.cpp
* added comments on imports
* clang-format and clang-tidy fixes for 2f65017d
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update count_inversions.cpp
* clang-format and clang-tidy fixes for 5d5cc53e
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update count_inversions.cpp
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update sorting/count_inversions.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update count_inversions.cpp
* clang-format and clang-tidy fixes for 121ce330
* Update sorting/count_inversions.cpp
Co-authored-by: John Law <johnlaw.po@gmail.com>
Co-authored-by: Taj <tjgurwara99@users.noreply.github.com>
Co-authored-by: David Leal <halfpacho@gmail.com>
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
Co-authored-by: John Law <johnlaw.po@gmail.com>
* feat: Add ncr mod p code (#1323)
* Update math/ncr_modulo_p.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Added all functions inside a class + added more asserts
* updating DIRECTORY.md
* clang-format and clang-tidy fixes for f6df24a5
* Replace int64_t to uint64_t + add namespace + detailed documentation
* clang-format and clang-tidy fixes for e09a0579
* Add extra namespace + add const& in function arguments
* clang-format and clang-tidy fixes for 8111f881
* Update ncr_modulo_p.cpp
* clang-format and clang-tidy fixes for 2ad2f721
* Update math/ncr_modulo_p.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update math/ncr_modulo_p.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Update math/ncr_modulo_p.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* clang-format and clang-tidy fixes for 5b69ba5c
* updating DIRECTORY.md
* clang-format and clang-tidy fixes for a8401d4b
Co-authored-by: David Leal <halfpacho@gmail.com>
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
* feat: add Pigeonhole algorithm
* Executed clang-format
* Used pointers and vector
* Corrected clang-tidy issues
* Modified code structure
* Apply suggestions from code review
Suggested changes applied
Co-authored-by: David Leal <halfpacho@gmail.com>
* Added missing parameter and documentation
* Added delete function
* Update pigeonhole_sort.cpp
* Corrected delete function
Co-authored-by: David Leal <halfpacho@gmail.com>
* Apply suggestions from code review
Co-authored-by: David Leal <halfpacho@gmail.com>
* Apply suggestions from code review
Co-authored-by: David Leal <halfpacho@gmail.com>
* Changed documentation regarding array size
* clang-tidy
* Apply suggestions from code review
Co-authored-by: David Leal <halfpacho@gmail.com>
* assert moved to test function
* Update pigeonhole_sort.cpp
* Update sorting/pigeonhole_sort.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
* Added test function and inbuilt min function
* min and max to const variables
* const int* to auto
* const int* to auto
* Apply suggestions from code review
Co-authored-by: Krishna Vedala <7001608+kvedala@users.noreply.github.com>
* Modified pigeonSort documentation
* Corrected test functions
Co-authored-by: lsurface <lownish@hotmail.com>
Co-authored-by: David Leal <halfpacho@gmail.com>
Co-authored-by: Krishna Vedala <7001608+kvedala@users.noreply.github.com>
* Added Bogo Sort
* Changed code according to guidelines
* Added Comments and example
* Improved code quality
* Added range based loop and included cassert
* Changed Vectors to Array
* Added const to vector arg and now returning sorted array
* Changed vector to array and changed description format
* Added namespace sorting, Function description and tests
* Update sorting/Bogo_Sort.cpp
Co-authored-by: Krishna Vedala <7001608+kvedala@users.noreply.github.com>
* Replaced Shuffle with std::random_shuffle
* Renamed filename to smallercase, Added shuffle for ref and updated bracket styling
* Added missing ')'
* updating DIRECTORY.md
* Added spaces in single line comments
* Added Spaces
* Update sorting/bogo_sort.cpp
Co-authored-by: David Leal <halfpacho@gmail.com>
Co-authored-by: Krishna Vedala <7001608+kvedala@users.noreply.github.com>
Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
Co-authored-by: David Leal <halfpacho@gmail.com>