|
|
@@ -1,8 +1,8 @@
|
|
1
|
1
|
import java.util.regex.Matcher;
|
|
2
|
2
|
import java.util.regex.Pattern;
|
|
3
|
3
|
|
|
4
|
|
-public class RunLengthEncoding {
|
|
5
|
|
- public String encode(String data) {
|
|
|
4
|
+class RunLengthEncoding {
|
|
|
5
|
+ String encode(String data) {
|
|
6
|
6
|
|
|
7
|
7
|
StringBuilder encodedDataBuilder = new StringBuilder();
|
|
8
|
8
|
|
|
|
@@ -35,7 +35,7 @@ public class RunLengthEncoding {
|
|
35
|
35
|
return encodedDataBuilder.toString();
|
|
36
|
36
|
}
|
|
37
|
37
|
|
|
38
|
|
- public void addChars(StringBuilder toAddTo, char toAdd, int countOfChar) {
|
|
|
38
|
+ void addChars(StringBuilder toAddTo, char toAdd, int countOfChar) {
|
|
39
|
39
|
if(countOfChar != 1) {
|
|
40
|
40
|
toAddTo.append(countOfChar);
|
|
41
|
41
|
}
|
|
|
@@ -43,7 +43,7 @@ public class RunLengthEncoding {
|
|
43
|
43
|
toAddTo.append(toAdd);
|
|
44
|
44
|
}
|
|
45
|
45
|
|
|
46
|
|
- public String decode(String encodedData) {
|
|
|
46
|
+ String decode(String encodedData) {
|
|
47
|
47
|
StringBuilder decodedData = new StringBuilder();
|
|
48
|
48
|
Pattern pattern = Pattern.compile("[0-9]+|[a-zA-Z\\s]");
|
|
49
|
49
|
Matcher matcher = pattern.matcher(encodedData);
|