Smarticles101 9 лет назад
Родитель
Сommit
e7070b0e0c
1 измененных файлов: 24 добавлений и 24 удалений
  1. 24
    24
      exercises/run-length-encoding/src/example/java/RunLengthEncoding.java

+ 24
- 24
exercises/run-length-encoding/src/example/java/RunLengthEncoding.java Просмотреть файл

3
 
3
 
4
 public class RunLengthEncoding {
4
 public class RunLengthEncoding {
5
     public String encode(String data) {
5
     public String encode(String data) {
6
-    	String encodedData = "";
6
+        String encodedData = "";
7
 
7
 
8
-    	for(int i = 0; i < data.length(); i++) {
9
-    		char c = data.charAt(i);
8
+        for (int i = 0; i < data.length(); i++) {
9
+            char c = data.charAt(i);
10
 
10
 
11
-    		if(i != 0 && c == data.charAt(i - 1)) continue;
11
+            if (i != 0 && c == data.charAt(i - 1)) continue;
12
 
12
 
13
-    		int amt = 1;
13
+            int amt = 1;
14
 
14
 
15
-    		for(int j = i+1; j < data.length() && c == data.charAt(j); j++) {
16
-    			amt++;
17
-    		}
15
+            for (int j = i + 1; j < data.length() && c == data.charAt(j); j++) {
16
+                amt++;
17
+            }
18
 
18
 
19
-    		if(amt == 1) encodedData += c;
20
-    		else encodedData += amt + Character.toString(c);
21
-    	}
19
+            if (amt == 1) encodedData += c;
20
+            else encodedData += amt + Character.toString(c);
21
+        }
22
 
22
 
23
-    	return encodedData;
23
+        return encodedData;
24
     }
24
     }
25
 
25
 
26
     public String decode(String encodedData) {
26
     public String decode(String encodedData) {
27
-    	String decodedData = "";
27
+        String decodedData = "";
28
         Pattern pattern = Pattern.compile("[0-9]+|[a-zA-Z\\s]");
28
         Pattern pattern = Pattern.compile("[0-9]+|[a-zA-Z\\s]");
29
         Matcher matcher = pattern.matcher(encodedData);
29
         Matcher matcher = pattern.matcher(encodedData);
30
 
30
 
31
         while (matcher.find()) {
31
         while (matcher.find()) {
32
-        	try {
33
-	            int number = Integer.parseInt(matcher.group());
34
-	        
35
-	            matcher.find();
36
-	        
37
-	            while (number-- != 0) {
38
-	                decodedData += matcher.group();
39
-	            }
40
-        	} catch(NumberFormatException e) {
41
-        		decodedData+=matcher.group();
42
-        	}
32
+            try {
33
+                int number = Integer.parseInt(matcher.group());
34
+
35
+                matcher.find();
36
+
37
+                while (number-- != 0) {
38
+                    decodedData += matcher.group();
39
+                }
40
+            } catch (NumberFormatException e) {
41
+                decodedData += matcher.group();
42
+            }
43
         }
43
         }
44
 
44
 
45
         return decodedData;
45
         return decodedData;