-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathArray345.java
More file actions
40 lines (37 loc) · 980 Bytes
/
Array345.java
File metadata and controls
40 lines (37 loc) · 980 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package array;
import java.util.List;
/**
* @ProjectName: leetcode
* @Package: array
* @ClassName: Array345
* @Author: markey
* @Description:
* @Date: 2020/2/8 17:32
* @Version: 1.0
*/
public class Array345 {
public String reverseVowels(String s) {
char[] list =s.toCharArray();
int i = 0, j = s.length() - 1;
while (i < j) {
while (i < j && !isOrigin(s.charAt(i))) {
i++;
}
while (i < j && !isOrigin(s.charAt(j))) {
j--;
}
if (i < j) {
list[i] = s.charAt(j);
list[j] = s.charAt(i);
i++;
j--;
} else {
break;
}
}
return String.valueOf(list);
}
private boolean isOrigin(char c) {
return c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' || c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U';
}
}