그 땐 Algorithm했지 (56) 썸네일형 리스트형 [TAVE/이코테] ch05 DFS/BFS | 개념 정리 | 실전 문제 참고자료: 이것이 코딩테스트다 꼭 필요한 자료구조 기초 탐색(Search): 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정 자료구조(Data Structure): 데이터를 표현하고 관리하고 처리하기 위한 구조 👉🏻DFS와 BFS를 공부하기 위해서는 자료구조 스택과 큐에 대한 사전지식이 필요하다. 스택: 선입후출 혹은 후입선출 구조 큐: 선입선출 구조 👉🏻파이썬에서 큐를 구현할 때는 collections 모듈의 deque 자료구조를 활용하면 좋다. deque에 대한 내용은 아래 링크를 참조하자! https://itwithruilan.tistory.com/67 [TAVE/파이썬 알고리즘] Ch10 | 데크, 우선순위 큐 - 개념 정리 개념 정리 📌데크: 스택과 큐 자료형의 특징을 모두 갖고 있는 복합 .. [TAVE/이코테] ch04 구현 | 개념 정리 | 실전 문제 참고자료: 이것이 코딩테스트다 구현(Implementation) 📌머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정 👉🏻풀이를 떠올리는 것은 쉽지만 소스코드로 옮기는 과정이 어려운 문제를 칭한다. 완전탐색 시뮬레이션 👉🏻파이썬으로 코딩테스트를 치를 때 리스트 메모리 제한을 주의해야 한다. 리스트를 여러 개 선언할 수록 메모리 용량을 차지한다. 일반적인 코딩테스트에서 적은 크기의 메모리를 사용하는 것이 중요하다. 👉🏻1초에 2,000만번의 연산을 수행한다면 안정적인 코드라고 생각할 수 있다. 👉🏻PyPy가 Python3의 문법을 그대로 지원하며 실행 속도는 더 빠르다. 때문에 코딩 테스트 환경이 PyPy를 지원해준다면 이를 사용하자! 예제 - 상하좌우 def RLUD(): location = [1, 1] n.. [TAVE/이코테] ch03 그리디 | 개념 정리 | 실전 문제 참고자료: 이것이 코딩테스트다 그리디(Greedy) 📌현재 상황에서 지금 당장 좋은 것만 고르는 방법으로 탐욕법이라고도 부른다. 👉🏻문제를 읽으면 '가장 큰 순서대로', '가장 작은 순서대로'와 같은 문구로 기준을 알게 모르게 제시해준다. 정렬 알고리즘과 짝을 이뤄 출제된다. 예제 - 거스름돈 N = 1260 def charge(N): coin = [500, 100, 50, 10] answer = 0 while(N): i = 0 answer += N / coin[i] N = N % coin[i] i += 1 return answer 👉🏻가장 큰 화폐 단위부터 돈을 거슬러주면 된다. 남은 돈(N)이 0이 될 때까지 반복한다. 각 화폐로 나눈 몫은 동전의 개수이므로 answer에 더해주고 나머지는 남은 돈이.. [TAVE/level 2] Python | 멀쩡한 사각형 문제 https://programmers.co.kr/learn/courses/30/lessons/62048 코딩테스트 연습 - 멀쩡한 사각형 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 programmers.co.kr 내 풀이 👉🏻전체 사각형의 수(w * h)에서 w와 h를 합한 값과 최대공약수를 빼면 된다! ✍🏻2*3일 때는 (2 * 3) - (2 + 3 - 1)이다. from math import gcd def solution(w, h): total_square = w * h greatest_common_divisor = gcd(w, h) .. [self-study/level 1] SQL | 이름이 없는 동물의 아이디 | IS NULL 문제 내 풀이 SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME is NULL ORDER BY ANIMAL_ID ASC 👉🏻값이 없는 필드를 찾을 때는 is NULL을 사용한다. [self-study/level 2] SQL | 입양 시각 구하기(1) | GROUP BY 문제 https://programmers.co.kr/learn/courses/30/lessons/59412 내 풀이 SELECT HOUR(DATETIME) AS 'HOUR', COUNT(DATETIME) AS 'COUNT' FROM ANIMAL_OUTS GROUP BY HOUR HAVING HOUR > 8 AND HOUR < 20 ORDER BY HOUR 👉🏻시간 데이터의 시각을 구하기 위해 HOUR 함수를 사용한다. [TAVE/파이썬 알고리즘] Ch9 | 스택, 큐 - 24번 스택을 이용한 큐 구현 https://leetcode.com/problems/implement-queue-using-stacks/ Implement Queue using Stacks - 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 스택 2개 이용 class MyQueue: def __init__(self): self.input = [] self.output = [] def push(self, x: int) -> None: self.input.append(x) def pop(self).. [self-study/level 2] SQL | 동명 동물 수 찾기 | GROUP BY 문제 내 풀이 SELECT NAME, COUNT(NAME) AS 'COUNT' FROM ANIMAL_INS GROUP BY NAME HAVING COUNT(NAME) > 1 ORDER BY NAME 👉🏻GROUP으로 묶은 후에 GROUP에 조건을 걸 때는 WHERE이 아니라 HAVING을 사용한다. 이전 1 2 3 4 5 6 7 다음