[Algorithm] 프로그래머스 전화번호 목록(해시)
문제 해당 문제를 풀 때 단순히 각 리스트 원소가 다른 리스트 원소의 앞 부분에 위치하는지, 그 원소로 시작하는 지를 따지려면 반복문을 2번 써야 하는 것. 풀이 문제 해결 아이디어는, "어떤 번호가 다른 번호의 접두어라면, 이 둘을 정렬했을 때 앞 뒤에 위치"하게 된다는 것이다. 즉, ["1235", "123", "12345", "012"] 라는 리스트를 정렬하게 되면 문자열 리스트는 대문자에서 소문자 순서로, 알파벳 순서로 정렬되므로, ["1012", "123", "12348", "1235"] 가 된다. 1. 따라서, i 번째 원소를 i+1번째 원소와 비교하며, 2-1. i + 1번째 원소의 [앞에서부터 ~ i번째 원소의 길이 만큼]이 i번째 원소와 같은지를 확인한다. 2-2. 여기서, i번째 원소가..
더보기
[Python] 헷갈리는 문법 정리1 - enumerate() & zip()
enumerate() enumerate() 함수는 인자의 값을 추출 할 때 인덱스를 함께 추출하는 기법. 인덱스 번호와 리스트 원소를 튜플 형태로 반환 fruit = ['apple', 'banana', 'strawberry', 'orange'] for i in enumerate(fruit): print(i) (0, 'apple') (1, 'banana') (2, 'strawberry') (3, 'orange') fruit = ['apple', 'banana', 'strawberry', 'orange'] for i, j in enumerate(fruit): print('index : {} , value : {}'.format(i,j)) index : 0 , value : apple index : 1 , v..
더보기