From 3e8f3e4c212e36dc973da0d33ec1910ca1e3854a Mon Sep 17 00:00:00 2001 From: minhle77 <144811017+minhle77@users.noreply.github.com> Date: Tue, 21 Nov 2023 22:36:09 +0700 Subject: [PATCH 1/2] Update IsUnique.java --- src/main/java/com/ctci/arraysandstrings/IsUnique.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/ctci/arraysandstrings/IsUnique.java b/src/main/java/com/ctci/arraysandstrings/IsUnique.java index 895d16b3..4a1d54ee 100644 --- a/src/main/java/com/ctci/arraysandstrings/IsUnique.java +++ b/src/main/java/com/ctci/arraysandstrings/IsUnique.java @@ -6,7 +6,7 @@ */ public class IsUnique { - private static boolean hasAllUniqueCharacters(String str) { + public static boolean hasAllUniqueCharacters(String str) { if (str == null || str.length() > 128) return false; boolean[] charSet = new boolean[128]; // assuming the string contains only ASCII characters @@ -20,7 +20,7 @@ private static boolean hasAllUniqueCharacters(String str) { return true; } - private static boolean hasAllUniqueCharactersWhenStringContainsAllLowercase(String s) { + public static boolean hasAllUniqueCharactersWhenStringContainsAllLowercase(String s) { int checker = 0; for (int i = 0; i < s.length(); i++) { int charValue = s.charAt(i) - 'a'; From 1f649bef7f3300d274f851393dafac49abc04e29 Mon Sep 17 00:00:00 2001 From: minhle77 <144811017+minhle77@users.noreply.github.com> Date: Tue, 21 Nov 2023 22:42:43 +0700 Subject: [PATCH 2/2] Add files via upload --- .../ctci/arraysandstrings/TestIsUnique.java | 34 +++++++++++++++++++ .../com/ctci/arraysandstrings/testMain.java | 15 ++++++++ 2 files changed, 49 insertions(+) create mode 100644 src/main/java/com/ctci/arraysandstrings/TestIsUnique.java create mode 100644 src/main/java/com/ctci/arraysandstrings/testMain.java diff --git a/src/main/java/com/ctci/arraysandstrings/TestIsUnique.java b/src/main/java/com/ctci/arraysandstrings/TestIsUnique.java new file mode 100644 index 00000000..3d85d200 --- /dev/null +++ b/src/main/java/com/ctci/arraysandstrings/TestIsUnique.java @@ -0,0 +1,34 @@ +package com.ctci.arraysandstrings; + +import org.junit.Test; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +public class TestIsUnique { + @Test + public void TesthasAllUniqueCharacters() { + String TC1 = "qwertyuiop123456@#$%"; + String TC2 = "aaaaaaaaa"; + + boolean R1 = IsUnique.hasAllUniqueCharacters(TC1); + boolean R2 = IsUnique.hasAllUniqueCharacters(TC2); + + assertTrue(R1); + assertFalse(R2); + } + @Test + public void TesthasAllUniqueCharactersWhenStringContainsAllLowercase() { + String TC1 = "qwertyuiop"; + String TC2 = "aaaaaaaaa"; + String TC3 = "QwertHfakjf"; + + boolean R1 = IsUnique.hasAllUniqueCharactersWhenStringContainsAllLowercase(TC1); + boolean R2 = IsUnique.hasAllUniqueCharactersWhenStringContainsAllLowercase(TC2); + boolean R3 = IsUnique.hasAllUniqueCharactersWhenStringContainsAllLowercase(TC3); + + assertTrue(R1); + assertFalse(R2); + assertFalse(R3); + + } +} diff --git a/src/main/java/com/ctci/arraysandstrings/testMain.java b/src/main/java/com/ctci/arraysandstrings/testMain.java new file mode 100644 index 00000000..13bdcdc6 --- /dev/null +++ b/src/main/java/com/ctci/arraysandstrings/testMain.java @@ -0,0 +1,15 @@ +package com.ctci.arraysandstrings; + +import org.junit.runner.JUnitCore; +import org.junit.runner.Result; +import org.junit.runner.notification.Failure; + +public class testMain { + public static void main(String[] args) { + Result result = JUnitCore.runClasses(TestIsUnique.class); + for (Failure failure: result.getFailures()) { + System.out.println(failure.toString()); + } + System.out.println(result.wasSuccessful()); + } +} \ No newline at end of file