본문 바로가기

Coding Test/Sorting4

[Sorting] H-Index 문제: https://school.programmers.co.kr/learn/courses/30/lessons/42747 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr k(=h)s ≥ k(=h) 1번 이상인 논문이 4편≥ 12번 이상인 논문이 3편≥ 23번 이상인 논문이 3편≥ 34번 이상인 논문이 2편5번 이상인 논문이 2편k(=h)가 s 초과일 때 종료, 이전 k값이 h-index이다.코드 1 (실패)def solution(citations): n = len(citations) ans = [] s=0 h = [i+1 for i in .. 2024. 6. 13.
[Sorting] 가장 큰 수 문제: https://school.programmers.co.kr/learn/courses/30/lessons/42746 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코드def solution(numbers): numbers = [str(i) for i in numbers] numbers.sort(key=lambda x: (x*3), reverse=True) answer = str().join(numbers) if list(answer)[0]=='0': return '0' return answer일단 numbers를 문.. 2024. 6. 13.
[Sorting] K번째 수 문제: https://school.programmers.co.kr/learn/courses/30/lessons/42748 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코드def solution(array, commands): sort_array = [sorted(array[i[0]-1:i[1]]) for i in commands] idx = [i[2]-1 for i in commands] answer = [sort_array[i][idx[i]] for i in range(len(commands))] return answer 2024. 6. 13.
Sorting 개념 비교정렬선택 정렬, 버블 정렬, 삽입 정렬, 퀵 정렬, 힙 정렬, 병합 정렬 등비(非)비교정렬계수 정렬, 기수 정렬, 버킷 정렬안정 정렬(Stable sort)동일한 값에 대해 기존의 순서가 유지되는 정렬 방식불안정 정렬(Not stable sort)동일한 값에 대해 기존의 순서가 뒤바뀔 수 있는 정렬 방식제자리 정렬(In-place sort)주어진 공간 외에 추가적인 공간을 사용하지 않는 정렬기본 정렬(1) Selection Sort 단위 순환최대 원소를 찾는다.최대 원소와 맨 오른쪽 원소의 자리를 바꾼다.맨 오른쪽 자리를 관심 대상에서 제외한다.원소가 1개 남을 때까지 위의 순환을 반복한다.비교 작업의 총 수가 수행 시간을 좌우한다.Worst$$ O(n^2) $$Average$$ O(n^2) $$Be.. 2024. 6. 13.