diff --git a/src/main/java/com/ctci/arraysandstrings/StringCompression.java b/src/main/java/com/ctci/arraysandstrings/StringCompression.java index 5c2df955..73d59449 100644 --- a/src/main/java/com/ctci/arraysandstrings/StringCompression.java +++ b/src/main/java/com/ctci/arraysandstrings/StringCompression.java @@ -17,6 +17,9 @@ private static String compressString(String str) { StringBuilder compressedSb = new StringBuilder(); int countConsecutive = 0; for (int i = 0; i < str.length(); i++) { + if(stringContainsNumber(str)) { + return str; + } countConsecutive++; /* If next character is different than current, append this char to result. */ @@ -28,6 +31,16 @@ private static String compressString(String str) { } return compressedSb.length() < str.length() ? compressedSb.toString() : str; } + + private static boolean stringContainsNumber(String str) { + int[] numArr = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; + for(int i = 0; i < numArr.length; i++) { + if(str.contains(String.valueOf(numArr[i]))) { + return true; + } + } + return false; + } public static void main(String[] args) { System.out.println("aabccccaaa: " + compressString("aabccccaaa"));