본문 바로가기

DICT

(5)
[정렬] 프로그래머스 L1 '문자열 내 마음대로 정렬하기' (Python) https://programmers.co.kr/learn/courses/30/lessons/12915 코딩테스트 연습 - 문자열 내 마음대로 정렬하기 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱 programmers.co.kr 1. 문자열의 n번째 숫자 기준으로 정렬 2. n번째 문자가 같은 경우 오름차순으로 정렬 def solution(strings, n): answer = [] hashs = {} for i in strings: hashs[i] = i[n] hashs = dict(sorted(hashs.items(..
[해시] 릿코드 Medium 567 'Permutation in String' (Python) https://leetcode.com/problems/permutation-in-string/ Permutation in String - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 순서 상관없이 s2 내에 연속해서 s1의 값이 들어있으면 됨 그 값이 몇개 있는지만 확인하면 되므로 Counter 라이브러리 이용 from collections import Counter class Solution: def checkInclusion(self, s1: str, s2..
[해시] 프로그래머스 L1 '완주하지 못한 선수' (Python) https://programmers.co.kr/learn/courses/30/lessons/42576 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 동명이인을 구분하기 위해 참가자의 이름별로 1씩 더한다. (동명이인이라면 2가 되니까) 완주자 명단에 있는 이름은 1을 뺀다. 완주하지 못한 사람은 한 명뿐이므로 값이 1인 이름을 출력한다. #1차시도 - 정확성 1,3,4,5 효율성 1,2,3,4,5 실패 def solution(participant, completion): answer = ..
[자료구조/알고리즘] 해시(Hash) - 해시 테이블, 파이썬 딕셔너리(Python Dictionary) 해쉬 테이블 (Hash Table) 1. 해쉬 구조 * Hash Table: 키(Key)에 데이터(Value)를 저장하는 데이터 구조 - Key를 통해 바로 데이터를 받아올 수 있으므로, 속도가 획기적으로 빨라짐 - 파이썬 딕셔너리(Dictionary) 타입이 해쉬 테이블의 예: Key를 가지고 바로 데이터(Value)를 꺼냄 - 보통 배열로 미리 Hash Table 사이즈만큼 생성 후에 사용 (공간과 탐색 시간을 맞바꾸는 기법) - 단, 파이썬에서는 해쉬를 별도 구현할 이유가 없음 - 딕셔너리 타입을 사용하면 됨 2. 알아둘 용어 해쉬(Hash) 임의 값을 고정 길이로 변환하는 것 데이터를 다루는 기법 중 하나로 검색과 저장이 아주 유용한 구조 key와 value 쌍으로 데이터를 저장한다. * 해쉬 테..
[정렬] 백준 10825번 '국영수' (Python) https://www.acmicpc.net/problem/10825 10825번: 국영수 첫째 줄에 도현이네 반의 학생의 수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 한 줄에 하나씩 각 학생의 이름, 국어, 영어, 수학 점수가 공백으로 구분해 주어진다. 점수는 1보다 크거나 같고, 1 www.acmicpc.net 학생 수가 100,000 이하이므로 효율적으로 값을 처리하기 위해 입력 값을 sys 라이브러리 사용 이름과 성적들이 짝을 이루기 때문에 dict 사용 정렬 조건이 여러 개이므로, 요구하는 조건 반대 순서대로 정렬 처리 '''입력예시 12 Junkyu 50 60 100 Sangkeun 80 60 50 Sunyoung 80 70 100 Soong 50 60 90 Haebin 50..

LIST