Skip to content

Commit

Permalink
feat: update CMake version to 3.26.4 (TheAlgorithms#2486)
Browse files Browse the repository at this point in the history
* update cmake version

* clang-format and clang-tidy fixes for 402c562

---------

Co-authored-by: David Leal <[email protected]>
Co-authored-by: github-actions[bot] <[email protected]>
  • Loading branch information
3 people authored Jun 16, 2023
1 parent d7a9869 commit 2d49283
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 39 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.9)
cmake_minimum_required(VERSION 3.26.4)
project(Algorithms_in_C++
LANGUAGES CXX
VERSION 1.0.0
Expand Down
4 changes: 2 additions & 2 deletions math/check_factorial.cpp
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/**
* @file
* @brief A simple program to check if the given number is a [factorial](https://en.wikipedia.org/wiki/Factorial) of some
* number or not.
* @brief A simple program to check if the given number is a
* [factorial](https://en.wikipedia.org/wiki/Factorial) of some number or not.
*
* @details A factorial number is the sum of k! where any value of k is a
* positive integer. https://www.mathsisfun.com/numbers/factorial.html
Expand Down
67 changes: 34 additions & 33 deletions math/check_prime.cpp
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
/**
* @file
* @brief
* A simple program to check if the given number is [Prime](https://en.wikipedia.org/wiki/Primality_test) or not.
* A simple program to check if the given number is
* [Prime](https://en.wikipedia.org/wiki/Primality_test) or not.
* @details
* A prime number is any number that can be divided only by itself and 1. It must
* be positive and a whole number, therefore any prime number is part of the
* set of natural numbers. The majority of prime numbers are even numbers, with
* the exception of 2. This algorithm finds prime numbers using this information.
* additional ways to solve the prime check problem:
* A prime number is any number that can be divided only by itself and 1. It
* must be positive and a whole number, therefore any prime number is part of
* the set of natural numbers. The majority of prime numbers are even numbers,
* with the exception of 2. This algorithm finds prime numbers using this
* information. additional ways to solve the prime check problem:
* https://cp-algorithms.com/algebra/primality_tests.html#practice-problems
* @author [Omkar Langhe](https://github.com/omkarlanghe)
* @author [ewd00010](https://github.com/ewd00010)
Expand All @@ -21,37 +22,37 @@
* @namespace
*/
namespace math {
/**
* @brief Function to check if the given number is prime or not.
* @param num number to be checked.
* @return true if number is a prime
* @return false if number is not a prime.
/**
* @brief Function to check if the given number is prime or not.
* @param num number to be checked.
* @return true if number is a prime
* @return false if number is not a prime.
*/
bool is_prime(int64_t num) {
/*!
* Reduce all possibilities of a number which cannot be prime with the first
* 3 if, else if conditionals. Example: Since no even number, except 2 can
* be a prime number and the next prime we find after our checks is 5,
* we will start the for loop with i = 5. then for each loop we increment
* i by +6 and check if i or i+2 is a factor of the number; if it's a factor
* then we will return false. otherwise, true will be returned after the
* loop terminates at the terminating condition which is i*i <= num
*/
bool is_prime(int64_t num) {
/*!
* Reduce all possibilities of a number which cannot be prime with the first
* 3 if, else if conditionals. Example: Since no even number, except 2 can
* be a prime number and the next prime we find after our checks is 5,
* we will start the for loop with i = 5. then for each loop we increment
* i by +6 and check if i or i+2 is a factor of the number; if it's a factor
* then we will return false. otherwise, true will be returned after the
* loop terminates at the terminating condition which is i*i <= num
*/
if (num <= 1) {
return false;
} else if (num == 2 || num == 3) {
return true;
} else if (num % 2 == 0 || num % 3 == 0) {
return false;
} else {
for (int64_t i = 5; i * i <= num; i = i + 6) {
if (num % i == 0 || num % (i + 2) == 0) {
return false;
}
if (num <= 1) {
return false;
} else if (num == 2 || num == 3) {
return true;
} else if (num % 2 == 0 || num % 3 == 0) {
return false;
} else {
for (int64_t i = 5; i * i <= num; i = i + 6) {
if (num % i == 0 || num % (i + 2) == 0) {
return false;
}
}
return true;
}
return true;
}
} // namespace math

/**
Expand Down
8 changes: 5 additions & 3 deletions strings/boyer_moore.cpp
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
/**
* @file
* @brief
* The [Boyer–Moore](https://en.wikipedia.org/wiki/Boyer%E2%80%93Moore_string-search_algorithm) algorithm searches for occurrences of pattern P in text T by
* performing explicit character comparisons at different alignments. Instead of
* a brute-force search of all alignments (of which there are n - m + 1),
* The
* [Boyer–Moore](https://en.wikipedia.org/wiki/Boyer%E2%80%93Moore_string-search_algorithm)
* algorithm searches for occurrences of pattern P in text T by performing
* explicit character comparisons at different alignments. Instead of a
* brute-force search of all alignments (of which there are n - m + 1),
* Boyer–Moore uses information gained by preprocessing P to skip as many
* alignments as possible.
*
Expand Down

0 comments on commit 2d49283

Please sign in to comment.