From 91c8a73a202377e42b9a55b44728492c562cd9f5 Mon Sep 17 00:00:00 2001 From: SYEDMDSAAD <134770714+SYEDMDSAAD@users.noreply.github.com> Date: Wed, 18 Feb 2026 14:19:35 +0530 Subject: [PATCH] Add RemoveStars and ComplexNumberMultiply string algorithms --- .../thealgorithms/strings/RemoveStars.java | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/main/java/com/thealgorithms/strings/RemoveStars.java diff --git a/src/main/java/com/thealgorithms/strings/RemoveStars.java b/src/main/java/com/thealgorithms/strings/RemoveStars.java new file mode 100644 index 000000000000..4f52259f6257 --- /dev/null +++ b/src/main/java/com/thealgorithms/strings/RemoveStars.java @@ -0,0 +1,36 @@ +package com.thealgorithms.strings; + +/** + * Removes characters affected by '*' in a string. + * Each '*' deletes the closest non-star character to its left. + * + * Example: + * Input: leet**cod*e + * Output: lecoe + */ + +public final class RemoveStars { + + private RemoveStars() { + // Private constructor to prevent instantiation(object creation) + } + + public static String removeStars(String s) { + StringBuilder result = new StringBuilder(); + + for (char c : s.toCharArray()) { + if (c == '*') { + if (result.length() > 0) { + result.deleteCharAt(result.length() - 1); + } + } else { + result.append(c); + } + } + return result.toString(); + } + public static void main(String[] args) { + String example = "leet**cod*e"; + System.out.println(removeStars(example)); + } +}