Free Lines Arrow
본문 바로가기
Algorithm/프로그래머스 알고리즘

[프로그래머스] 전화번호 목록

by skahn1215 2021. 8. 9.
728x90
반응형

문제

 

 

 

 

분석

해쉬 문제이지만 굳이 해쉬로 풀어도 되지 않을것 같았다.

  • 1. 2중 for문으로 푼다.
    - 효율성에서 탈락
  • 2. 사전순으로 정렬해서 푼다.
    - 제일 깔끔했다.
  • 사전순으로 정렬하면 참 쉽다
    - 예를 들어서 사전순으로 정렬한다면 다음과 같다.
    - 가나 가나다 나다 나다라 나다라마바사
  • 그럼 앞 뒤 만 비교해주면 끝난다.

 

 

 

 

구현

import java.util.*;

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].indexOf(phone_book[i]) == 0) {
                answer = false;
                break;
            }
        }
        

        return answer;
    }
}

 

 

 

 

 

결과

728x90
반응형

댓글