Leetcode Java Occurrences After Bigram
업데이트:
문제
코드
class Solution {
public String[] findOcurrences(String text, String first, String second) {
String[] words = text.split(" ");
List<String> result = new ArrayList<>();
for (int i = 2; i < words.length; i++) {
if (first.equals(words[i - 2]) && second.equals(words[i - 1])) {
result.add(words[i]);
}
}
return result.toArray(new String[] {});
}
}
결과
설명
-
띄어쓰기로 각 문자열이 구분된 text 문자열에서 first 문자열 다음 second 문자열이 나온 다음 문자열인 third 문자열들을 모아 반환하는 문제이다.
- 문제 풀이에 필요한 변수를 정의한다.
- words는 test를 띄어쓰기 단위로 분리하여 저장한 문자열 배열이다.
- result는 third 문자열을 모으기 위한 변수로, ArrayList로 초기화한다.
- 2부터 words의 길이 미만까지 i를 증가시키며 아래를 반복한다.
- first와 words[$i - 2$] 문자열이 같으면서 second와 words[$i - 1$] 문자열이 같은 경우, result에 words[i]를 넣어준다.
- 반복이 완료되면 조건에 만족하는 third 문자열만 모은 result를 문자열 배열로 변환하여 주어진 문제의 결과로 반환한다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기