[알고리즘/Python] 힙(Heap)
·
알고리즘
📌 힙 힙은 우선순위 큐를 위해 만들어진 자료구조로, 완전 이진트리의 일종이다.여러 값 중 최대/최소 값을 빠르게 찾아내도록 만들어진 반정렬 상태이다. 힙에서는 중복된 값을 허용한다. 최대/최소 값을 찾기 위해서 O(n)의 시간이 걸리지만, 힙을 사용하면 O(logN) 만큼 소요된다.  ✅ 반정렬 상태 (느슨한 정렬 상태)큰 값이 상위 레벨에 있고 작은 값이 하위 레벨에 있다.부모 노드의 키 값이 자식 노드의 키 값보다 항상 크거나 작은 이진 트리이다.✅ 우선순위 큐들어간 순서와 상관 없이높은 우선순위를 가진 원소는 낮은 우선순위를 가진 원소보다 먼저 처리만약 두 원소가 같은 우선순위를 가진다면 큐에서 그들의 순서에 의해 처리✅ 완전 이진트리 자식 노드가 최대 2개만 채워진다. 우선순위 큐 순서대로 채..
[알고리즘/Python] 스택(Stack) /큐(Queue)
·
알고리즘
📌 관련 문제 풀이 모음 (계속 추가추가..)2024.10.17 - [분류 전체보기] - [프로그래머스/Python] 알고리즘고득점Kit-스택/큐-프로세스2024.10.17 - [코딩테스트/프로그래머스] - [프로그래머스/Python] 알고리즘고득점Kit-스택/큐-올바른 괄호2024.10.17 - [코딩테스트/프로그래머스] - [프로그래머스/Python] 알고리즘고득점Kit-스택/큐-기능개발2024.10.12 - [코딩테스트/프로그래머스] - [프로그래머스/Python] 알고리즘고득점Kit-스택/큐-같은숫자는 싫어 📌 1. 스택 (Stack)후입 선출 구조 Last In First Out(LIFO)로 나중에 들어간 것이 먼저 나오는 구조이다.파이썬에서는 별도의 라이브러리 사용 없이 기본 리스트를 사용..
[알고리즘 전략] 탐욕법(Greedy)/ DP(동적 계획법)
·
알고리즘
※ 구글링하면서 재구성한 내용입니다. 세상 모든 개발자 블로그 만만세※ 계속 공부하면서 내용 채울 것임. 📌 탐욕법 (Greedy Algorithm)⭐ 푸는 방법 1. 일단 완전 탐색을 고민해본다. 제한시간/메모리 초과되는지 확인한다. 2. 문제에서 규칙성을 찾으면 풀 수 있는 편이다. 3. 아이디어를 떠올리고, 반레가 있는지 따져보면 된다.  ‘각 단계에서 최적이라고 생각되는 것을 선택’ 해 나가는 방식으로 진행하여 최종적인 해답에 도달하는 알고리즘💡 각각 상황에서 '최적'이라고 생각하는 방법을 선택한다.(상황에서 가장 높은 수를 선택합니다.) 그리디 알고리즘을 적용하기 위해서는 아래 2가지 속성을 만족해야 한다고 한다.  탐욕 선택 속성(Greedy Choice Property) 이란?각 단계에서..
[프로그래머스/Python] 알고리즘고득점Kit-탐욕법(Greedy)-구명보트
·
코딩테스트/프로그래머스
📌 문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/42885# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 📌 문제 설명 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다.  예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람은 같이 탈 수 있지만 1번째 사람과 3번째 사람의 무게의 합은 150kg이므로 ..
[프로그래머스/Python] 알고리즘고득점Kit-해시-폰켓몬
·
코딩테스트/프로그래머스
📌 문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/1845 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  📌 문제 설명 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓..
[알고리즘 전략] DFS/ BFS/ 백트래킹
·
알고리즘
📌 관련 코테 풀이 모음집 (계속 업데이트 해보자고요)2024.10.09 - [코딩테스트/BAEKJOON] - [백준/Python] 1260. DFS와 BFS2024.10.12 - [코딩테스트/BAEKJOON] - [백준/Python] 5014번. 스타트링크2024.10.12 - [코딩테스트/BAEKJOON] - [백준/Python] 1697번. 숨바꼭질2024.10.11 - [코딩테스트/BAEKJOON] - [백준/Python] 2644번. 촌수 문제2024.10.09 - [코딩테스트/BAEKJOON] - [백준/Python] 2667번. 단지번호 붙이기2024.10.09 - [코딩테스트/BAEKJOON] - [백준/Python] 2606번. 바이러스2024.10.09 - [코딩테스트/BAEKJOON..