From cfec26924a6cd6d3193812b9c45abf9692af24b5 Mon Sep 17 00:00:00 2001
From: Priyanshu
Date: Sun, 21 Jun 2026 16:57:18 +0530
Subject: [PATCH 1/7] feat: add utility to find lowest base for palindromic
numbers and implement palindrome check for singly linked lists
---
.../lists}/PalindromeSinglyLinkedList.java | 0
.../com/thealgorithms/{others => maths}/LowestBasePalindrome.java | 0
.../java/com/thealgorithms/{misc => maths}/PalindromePrime.java | 0
.../lists}/PalindromeSinglyLinkedListTest.java | 0
.../thealgorithms/{others => maths}/LowestBasePalindromeTest.java | 0
.../com/thealgorithms/{misc => maths}/PalindromePrimeTest.java | 0
6 files changed, 0 insertions(+), 0 deletions(-)
rename src/main/java/com/thealgorithms/{misc => datastructures/lists}/PalindromeSinglyLinkedList.java (100%)
rename src/main/java/com/thealgorithms/{others => maths}/LowestBasePalindrome.java (100%)
rename src/main/java/com/thealgorithms/{misc => maths}/PalindromePrime.java (100%)
rename src/test/java/com/thealgorithms/{misc => datastructures/lists}/PalindromeSinglyLinkedListTest.java (100%)
rename src/test/java/com/thealgorithms/{others => maths}/LowestBasePalindromeTest.java (100%)
rename src/test/java/com/thealgorithms/{misc => maths}/PalindromePrimeTest.java (100%)
diff --git a/src/main/java/com/thealgorithms/misc/PalindromeSinglyLinkedList.java b/src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java
similarity index 100%
rename from src/main/java/com/thealgorithms/misc/PalindromeSinglyLinkedList.java
rename to src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java
diff --git a/src/main/java/com/thealgorithms/others/LowestBasePalindrome.java b/src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java
similarity index 100%
rename from src/main/java/com/thealgorithms/others/LowestBasePalindrome.java
rename to src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java
diff --git a/src/main/java/com/thealgorithms/misc/PalindromePrime.java b/src/main/java/com/thealgorithms/maths/PalindromePrime.java
similarity index 100%
rename from src/main/java/com/thealgorithms/misc/PalindromePrime.java
rename to src/main/java/com/thealgorithms/maths/PalindromePrime.java
diff --git a/src/test/java/com/thealgorithms/misc/PalindromeSinglyLinkedListTest.java b/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
similarity index 100%
rename from src/test/java/com/thealgorithms/misc/PalindromeSinglyLinkedListTest.java
rename to src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
diff --git a/src/test/java/com/thealgorithms/others/LowestBasePalindromeTest.java b/src/test/java/com/thealgorithms/maths/LowestBasePalindromeTest.java
similarity index 100%
rename from src/test/java/com/thealgorithms/others/LowestBasePalindromeTest.java
rename to src/test/java/com/thealgorithms/maths/LowestBasePalindromeTest.java
diff --git a/src/test/java/com/thealgorithms/misc/PalindromePrimeTest.java b/src/test/java/com/thealgorithms/maths/PalindromePrimeTest.java
similarity index 100%
rename from src/test/java/com/thealgorithms/misc/PalindromePrimeTest.java
rename to src/test/java/com/thealgorithms/maths/PalindromePrimeTest.java
From 98fbea962e482075f3a5054c1a673e8b9714ec49 Mon Sep 17 00:00:00 2001
From: Priyanshu
Date: Sun, 21 Jun 2026 16:58:06 +0530
Subject: [PATCH 2/7] feat: add palindrome check for linked lists and find
lowest base palindrome implementation
---
.../datastructures/lists/PalindromeSinglyLinkedList.java | 2 +-
.../java/com/thealgorithms/maths/LowestBasePalindrome.java | 2 +-
src/main/java/com/thealgorithms/maths/PalindromePrime.java | 2 +-
.../java/com/thealgorithms/stacks/PalindromeWithStack.java | 7 +++++++
src/main/java/com/thealgorithms/strings/Palindrome.java | 7 +++++++
.../lists/PalindromeSinglyLinkedListTest.java | 2 +-
.../com/thealgorithms/maths/LowestBasePalindromeTest.java | 2 +-
.../java/com/thealgorithms/maths/PalindromePrimeTest.java | 2 +-
8 files changed, 20 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java b/src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java
index c81476eaec32..44fcb6e4d6ea 100644
--- a/src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java
+++ b/src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java
@@ -1,4 +1,4 @@
-package com.thealgorithms.misc;
+package com.thealgorithms.datastructures.lists;
import java.util.Stack;
diff --git a/src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java b/src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java
index a3ca8d6f6db8..9490984719f1 100644
--- a/src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java
+++ b/src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java
@@ -1,4 +1,4 @@
-package com.thealgorithms.others;
+package com.thealgorithms.maths;
import java.util.ArrayList;
import java.util.List;
diff --git a/src/main/java/com/thealgorithms/maths/PalindromePrime.java b/src/main/java/com/thealgorithms/maths/PalindromePrime.java
index 164e957a9d12..5fc650a3de9b 100644
--- a/src/main/java/com/thealgorithms/maths/PalindromePrime.java
+++ b/src/main/java/com/thealgorithms/maths/PalindromePrime.java
@@ -1,4 +1,4 @@
-package com.thealgorithms.misc;
+package com.thealgorithms.maths;
import java.util.ArrayList;
import java.util.List;
diff --git a/src/main/java/com/thealgorithms/stacks/PalindromeWithStack.java b/src/main/java/com/thealgorithms/stacks/PalindromeWithStack.java
index 98c439341a21..7afe2c99aae8 100644
--- a/src/main/java/com/thealgorithms/stacks/PalindromeWithStack.java
+++ b/src/main/java/com/thealgorithms/stacks/PalindromeWithStack.java
@@ -8,6 +8,13 @@
* which we will pop one-by-one to create the string in reverse.
*
* Reference: https://www.geeksforgeeks.org/check-whether-the-given-string-is-palindrome-using-stack/
+ *
+ * @see com.thealgorithms.strings.Palindrome
+ * @see com.thealgorithms.bitmanipulation.BinaryPalindromeCheck
+ * @see com.thealgorithms.maths.LowestBasePalindrome
+ * @see com.thealgorithms.datastructures.lists.PalindromeSinglyLinkedList
+ * @see com.thealgorithms.maths.PalindromePrime
+ * @see com.thealgorithms.maths.PalindromeNumber
*/
public class PalindromeWithStack {
private LinkedList stack;
diff --git a/src/main/java/com/thealgorithms/strings/Palindrome.java b/src/main/java/com/thealgorithms/strings/Palindrome.java
index 3567a371d70e..64de657df359 100644
--- a/src/main/java/com/thealgorithms/strings/Palindrome.java
+++ b/src/main/java/com/thealgorithms/strings/Palindrome.java
@@ -2,6 +2,13 @@
/**
* Wikipedia: https://en.wikipedia.org/wiki/Palindrome
+ *
+ * @see com.thealgorithms.stacks.PalindromeWithStack
+ * @see com.thealgorithms.bitmanipulation.BinaryPalindromeCheck
+ * @see com.thealgorithms.maths.LowestBasePalindrome
+ * @see com.thealgorithms.datastructures.lists.PalindromeSinglyLinkedList
+ * @see com.thealgorithms.maths.PalindromePrime
+ * @see com.thealgorithms.maths.PalindromeNumber
*/
final class Palindrome {
private Palindrome() {
diff --git a/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java b/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
index 0f0577d39094..5241c7c8c703 100644
--- a/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
+++ b/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
@@ -1,4 +1,4 @@
-package com.thealgorithms.misc;
+package com.thealgorithms.datastructures.lists;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
diff --git a/src/test/java/com/thealgorithms/maths/LowestBasePalindromeTest.java b/src/test/java/com/thealgorithms/maths/LowestBasePalindromeTest.java
index 7c3ce6635aa0..5a3d1c64b379 100644
--- a/src/test/java/com/thealgorithms/maths/LowestBasePalindromeTest.java
+++ b/src/test/java/com/thealgorithms/maths/LowestBasePalindromeTest.java
@@ -1,4 +1,4 @@
-package com.thealgorithms.others;
+package com.thealgorithms.maths;
import java.util.ArrayList;
import java.util.Arrays;
diff --git a/src/test/java/com/thealgorithms/maths/PalindromePrimeTest.java b/src/test/java/com/thealgorithms/maths/PalindromePrimeTest.java
index 130cd19b47b1..2405da558700 100644
--- a/src/test/java/com/thealgorithms/maths/PalindromePrimeTest.java
+++ b/src/test/java/com/thealgorithms/maths/PalindromePrimeTest.java
@@ -1,4 +1,4 @@
-package com.thealgorithms.misc;
+package com.thealgorithms.maths;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
From 1f0bfbbb1ff4831c5ee2bea06d757f3bdbfaaaa0 Mon Sep 17 00:00:00 2001
From: Priyanshu
Date: Sun, 21 Jun 2026 16:58:14 +0530
Subject: [PATCH 3/7] feat: add utility to check if an integer's binary
representation is a palindrome
---
.../bitmanipulation/BinaryPalindromeCheck.java | 6 ++++++
.../java/com/thealgorithms/maths/LowestBasePalindrome.java | 6 ++++++
2 files changed, 12 insertions(+)
diff --git a/src/main/java/com/thealgorithms/bitmanipulation/BinaryPalindromeCheck.java b/src/main/java/com/thealgorithms/bitmanipulation/BinaryPalindromeCheck.java
index 0d6fd140c720..5038d44079ec 100644
--- a/src/main/java/com/thealgorithms/bitmanipulation/BinaryPalindromeCheck.java
+++ b/src/main/java/com/thealgorithms/bitmanipulation/BinaryPalindromeCheck.java
@@ -9,6 +9,12 @@
*
*
* @author Hardvan
+ * @see com.thealgorithms.strings.Palindrome
+ * @see com.thealgorithms.stacks.PalindromeWithStack
+ * @see com.thealgorithms.maths.LowestBasePalindrome
+ * @see com.thealgorithms.datastructures.lists.PalindromeSinglyLinkedList
+ * @see com.thealgorithms.maths.PalindromePrime
+ * @see com.thealgorithms.maths.PalindromeNumber
*/
public final class BinaryPalindromeCheck {
private BinaryPalindromeCheck() {
diff --git a/src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java b/src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java
index 9490984719f1..4a79b4298fc4 100644
--- a/src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java
+++ b/src/main/java/com/thealgorithms/maths/LowestBasePalindrome.java
@@ -23,6 +23,12 @@
*
* @see OEIS A016026 - Smallest base in which
* n is palindromic
+ * @see com.thealgorithms.strings.Palindrome
+ * @see com.thealgorithms.stacks.PalindromeWithStack
+ * @see com.thealgorithms.bitmanipulation.BinaryPalindromeCheck
+ * @see com.thealgorithms.datastructures.lists.PalindromeSinglyLinkedList
+ * @see com.thealgorithms.maths.PalindromePrime
+ * @see com.thealgorithms.maths.PalindromeNumber
* @author TheAlgorithms Contributors
*/
public final class LowestBasePalindrome {
From 0658e7bab96463223f8e116834d7ff1c6b2cd673 Mon Sep 17 00:00:00 2001
From: Priyanshu
Date: Sun, 21 Jun 2026 16:58:27 +0530
Subject: [PATCH 4/7] feat: add algorithm to check if a singly linked list is a
palindrome
---
.../lists/PalindromeSinglyLinkedList.java | 7 +++++++
.../java/com/thealgorithms/maths/PalindromePrime.java | 11 +++++++++++
2 files changed, 18 insertions(+)
diff --git a/src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java b/src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java
index 44fcb6e4d6ea..7bb16921b9ef 100644
--- a/src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java
+++ b/src/main/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedList.java
@@ -9,6 +9,13 @@
*
* See more:
* https://www.geeksforgeeks.org/function-to-check-if-a-singly-linked-list-is-palindrome/
+ *
+ * @see com.thealgorithms.strings.Palindrome
+ * @see com.thealgorithms.stacks.PalindromeWithStack
+ * @see com.thealgorithms.bitmanipulation.BinaryPalindromeCheck
+ * @see com.thealgorithms.maths.LowestBasePalindrome
+ * @see com.thealgorithms.maths.PalindromePrime
+ * @see com.thealgorithms.maths.PalindromeNumber
*/
@SuppressWarnings("rawtypes")
public final class PalindromeSinglyLinkedList {
diff --git a/src/main/java/com/thealgorithms/maths/PalindromePrime.java b/src/main/java/com/thealgorithms/maths/PalindromePrime.java
index 5fc650a3de9b..21b76acefee8 100644
--- a/src/main/java/com/thealgorithms/maths/PalindromePrime.java
+++ b/src/main/java/com/thealgorithms/maths/PalindromePrime.java
@@ -3,6 +3,17 @@
import java.util.ArrayList;
import java.util.List;
+/**
+ * A class to check and generate palindromic prime numbers.
+ * A palindromic prime is a prime number that is also a palindromic number.
+ *
+ * @see com.thealgorithms.strings.Palindrome
+ * @see com.thealgorithms.stacks.PalindromeWithStack
+ * @see com.thealgorithms.bitmanipulation.BinaryPalindromeCheck
+ * @see com.thealgorithms.maths.LowestBasePalindrome
+ * @see com.thealgorithms.datastructures.lists.PalindromeSinglyLinkedList
+ * @see com.thealgorithms.maths.PalindromeNumber
+ */
public final class PalindromePrime {
private PalindromePrime() {
}
From ef766e77cea89a7da033488bd6612c707ac18426 Mon Sep 17 00:00:00 2001
From: Priyanshu
Date: Sun, 21 Jun 2026 16:58:37 +0530
Subject: [PATCH 5/7] feat: add PalindromeNumber utility class to check for
palindromic integers
---
.../com/thealgorithms/maths/PalindromeNumber.java | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/main/java/com/thealgorithms/maths/PalindromeNumber.java b/src/main/java/com/thealgorithms/maths/PalindromeNumber.java
index a22d63897b37..9543f83332a7 100644
--- a/src/main/java/com/thealgorithms/maths/PalindromeNumber.java
+++ b/src/main/java/com/thealgorithms/maths/PalindromeNumber.java
@@ -1,5 +1,16 @@
package com.thealgorithms.maths;
+/**
+ * A class to check if a given number is a palindrome.
+ * A palindromic number is a number that remains the same when its digits are reversed.
+ *
+ * @see com.thealgorithms.strings.Palindrome
+ * @see com.thealgorithms.stacks.PalindromeWithStack
+ * @see com.thealgorithms.bitmanipulation.BinaryPalindromeCheck
+ * @see com.thealgorithms.maths.LowestBasePalindrome
+ * @see com.thealgorithms.datastructures.lists.PalindromeSinglyLinkedList
+ * @see com.thealgorithms.maths.PalindromePrime
+ */
public final class PalindromeNumber {
private PalindromeNumber() {
}
From e9d52358cc2f66e8e638b3b562805583e661f719 Mon Sep 17 00:00:00 2001
From: Priyanshu
Date: Sun, 21 Jun 2026 17:27:30 +0530
Subject: [PATCH 6/7] style: remove redundant import to fix checkstyle error
---
.../datastructures/lists/PalindromeSinglyLinkedListTest.java | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java b/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
index 5241c7c8c703..897d0705bea9 100644
--- a/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
+++ b/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
@@ -2,8 +2,6 @@
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
-
-import com.thealgorithms.datastructures.lists.SinglyLinkedList;
import org.junit.jupiter.api.Test;
public class PalindromeSinglyLinkedListTest {
From 1c68b098400d05d47c1f61d277e580e78ef80baf Mon Sep 17 00:00:00 2001
From: Priyanshu
Date: Sun, 21 Jun 2026 17:32:52 +0530
Subject: [PATCH 7/7] style: add blank line between static and non-static
imports
---
.../datastructures/lists/PalindromeSinglyLinkedListTest.java | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java b/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
index 897d0705bea9..10f6b8536b19 100644
--- a/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
+++ b/src/test/java/com/thealgorithms/datastructures/lists/PalindromeSinglyLinkedListTest.java
@@ -2,6 +2,7 @@
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
+
import org.junit.jupiter.api.Test;
public class PalindromeSinglyLinkedListTest {