🐈
プログラミング自主学習 DAY57 Coding Test
Coding Test
文字列の反復
入力例:"hello", 3
出力例: "hhheeellllllooo"
<My Code>
class Solution {
public String solution(String my_string, int n) {
String answer = "";
for(int i=0; i<my_string.length();i++){
for(int j=0; j<n; j++){
answer += my_string.charAt(i);
}
}
return answer;
}
}
<Good Code>
class Solution {
public String solution(String my_string, int n) {
String answer = "";
String[] str = my_string.split("");
for(int i=0; i<my_string.length(); i++){
answer += str[i].repeat(n);
}
return answer;
}
}
splitとrepeat(n)を活用して、時間計算量を減らした。
<Good Code>
class Solution {
public String solution(String my_string, int n) {
StringBuilder sb = new StringBuilder();
for(char c : my_string.toCharArray()){
sb.append((c + "").repeat(n));
}
return sb.toString();
}
}
StringBuilder,結合演算など様々な基礎をしっかり活用した。
文字列変換 (母音を取り除く)
my_string | result |
---|---|
"bus" | "bs" |
"nice to meet you" | "nc t mt y" |
<My Code>
class Solution {
public String solution(String my_string) {
return my_string.replaceAll("[a,e,i,o,u]","");
}
}
Discussion