-
[Java] 프로그래머스 Level2 전화번호 목록Algorithm/프로그래머스 2021. 3. 23. 00:38
class Solution { public boolean solution(String[] phone_Book) { for(int i=0; i<phone_Book.length-1; i++) { for(int j=i+1; j<phone_Book.length; j++) { if(phoneBook[i].startsWith(phone_Book[j])) {return false;} if(phoneBook[j].startsWith(phone_Book[i])) {return false;} } } return true; } }
다른 사람들 문제풀이를 보니, 이중 for문을 이용하여 비교하는 방식이 많았지만, 효율성 3,4 가 통과하지 못했다
import java.util.Arrays; class Solution { public boolean solution(String[] phone_book) { boolean answer = true; Arrays.sort(phone_book); for (int i = 0; i < phone_book.length - 1; i++) { if(phone_book[i + 1].startsWith(phone_book[i])) return false; } return answer; } }
Arrays.sort를 이용하면 문자가 정렬 되기 때문에 for문을 한번만 쓸 수 있어 효율성이 높아진다.
'Algorithm > 프로그래머스' 카테고리의 다른 글
[Python] 2016년 (0) 2021.05.01 [Python] 체육복 (0) 2021.05.01 [Python] 모의고사 (0) 2021.04.29 [Python] 완주하지 못한 선수 (0) 2021.04.27 [Python] 크레인 인형뽑기 (0) 2021.04.26