Skip to content

Completed develop arrays structuring and library core

Compare
Choose a tag to compare
@Nakama3942 Nakama3942 released this 24 Jun 18:32
· 68 commits to main since this release

Brought the structure of the project to the final form...

Invalid Fixed:

  • Replaced broken SmoothSort on BatcherOddEvenMergeSort.

Documenting:

  • Returned all documentation back to the header. I am preparing to write documentation;
  • Rewrote CHANGELOG for a new design style.

Enhancements:

  • Added:

    • Added a separate array generation function used by the Array class;
    • Added new Getters: getPosition() and getValue();
    • Added a Linear Congruent Pseudo-Random Number Generation Method and a Randomizers Testing Function for Uniformity of number generation using Pearson Consistency Criterion;
  • Optimized:

    • Optimized the swap() function;
    • Strongly optimized the resize() method;
  • Replaced:

    • Replaced implementations of reset() and respawn() methods with opposite ones;
    • Replaced binary search (now it is similar to the binary search that was implemented for LibrarySort);
  • Rewrited:

    • Rewrote all standard types to declared aliases;
    • Rewrote the giant part of the code, replacing the forced compilation of methods with the forced compilation of classes;
    • Decided with the types with which functions and classes will now be compiled (byte8_t == long long int, ubit64_t == unsigned long long int, fbit64_t == double, fbit128_t == long double, asize_t == unsigned int);
    • Completely rewrote the old operators (in some even changed the purpose) and added new ones: ^=, =, ==;
  • Testing:

    • Wrote separate programs for testing the library;
    • Completely tested all sorting algorithms;
  • Array verification:

    • The verification function has been finalized: it is now the base array class method used when saving to a data class object;
  • Merged:

    • Merged all basic functions into a basic class, rewriting them in static methods;
    • Merged the moda() and modas() methods into one method, since I created their own structure for them and they both now point to this structure, and the second method uses the first and a little spreads the result (so what is the point if you combine them - nothing will change);
    • Merged all exceptions into the namespace EXCEPTION_SET;
    • Merged all Randomizers into the namespace RANDOM;
    • Merged both categories (classes) of sorts into the namespace SORTING;
  • Rereleased:

    • Replaced versions of releases (now the release of the version 1.0.0.0 library will take place only after the completion of full documentation).

Planned old tag 2.3.0