목록알고리즘 (26)
가치투자자
Programmers : 완주하지 못한 선수 🔗 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💬 문제 정렬(sort) 이나 해시(hash) 에 대한 이해가 있다면, 충분히 풀 수 있는 문제였다. 해시에 대해 익숙하지 않다면, 아래 글을 참고해보길 바란다. https://valueengine.tistory.com/55 [자료구조] 해시 (Hash) 해시 (Hash) 해시는 무엇일까? 또 해시 테이블은 해시랑 같은것일까? 이에 대해 ..
Programmers : 타겟 넘버 🔗 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💬 문제 DFS(깊이 우선 탐색) 에 대한 이해가 있다면, 충분히 풀 수 있는 문제였다. DFS에 대해 잘 모른다면, 아래 글을 먼저 보고 오는걸 추천한다. https://valueengine.tistory.com/48 [알고리즘] 깊이 우선 탐색(DFS)과 너비 우선 탐색(BFS) DFS와 BFS 그래프는 여러 정점(node)과 그 정점들을 연결..
DFS와 BFS 그래프는 여러 정점(node)과 그 정점들을 연결하는 간선(edge)으로 이루어진 자료구조다. 그래프나 트리 등 비선형 구조로 데이터가 담긴 자료구조는 순차적으로 나열된 선형 구조(배열, 연결리스트, 스택, 큐)에 비해 데이터 탐색이 훨씬 어렵다. 이러한 그래프의 정점들을 처음부터 끝까지 탐색할 때 대표적인 탐색 방법에는 깊이 우선 탐색(DFS)과 너비 우선 탐색(BFS)이 있다. 자주 쓰이는 이 두 가지 알고리즘에 대해 쉽게 설명해보고자 한다. 1. 깊이 우선 탐색 (DFS, Depth First Search) 깊이 우선 탐색 (DFS) 은 가장 깊이 있는(끝에 있는)정점까지 다 탐색하고, 다시 갈림길로 돌아와 다른 길로 끝까지 탐색하는 알고리즘이다. 쉽게 설명하자면, 여러 드라마들이 ..
백준 1874번 : 스택 수열 🔗 문제 링크 https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 💬 문제 스택(stack) 에 대한 이해가 있다면, 충분히 풀 수 있는 문제다. 1부터 n까지의 수가 존재한다. 1부터 하나씩 스택(stack)에 넣고 필요한 숫자가 stack에 들어오면 그걸 빼서 나열하여 수열을 만들어준다. - 스택에 오름차순으로 넣어줘야 하므로(pus..
백준 6131번 : 완전 제곱수 🔗 문제 링크 https://www.acmicpc.net/problem/6131 6131번: 완전 제곱수 상근이는 선영이와 함께 게임을 하고 있다. 먼저, 상근이는 두 양의 정수 A와 B를 고른다. (1 ≤ B ≤ A ≤ 500) 그 다음, 선영이는 상근이가 고른 수를 맞춰야 한다. 상근이는 선영이에게 다음과 같 www.acmicpc.net 💬 문제 제곱 과 완전탐색(브루트포스) 에 대한 이해가 있다면, 충분히 풀 수 있는 문제다. 어떤 정수 A와 B가 있을 때, A의 제곱은 B의 제곱보다 N만큼 크다. - A는 B보다 작거나 같고, A와 B는 500보다 작다 N이 주어질 때, N만큼 차이나는 A와 B의 쌍의 개수를 구해준다. 💡 입력값 받아오기 JavaScript로 풀 ..
백준 1120번 : 문자열 🔗 문제 링크 https://www.acmicpc.net/problem/1120 1120번: 문자열 길이가 N으로 같은 문자열 X와 Y가 있을 때, 두 문자열 X와 Y의 차이는 X[i] ≠ Y[i]인 i의 개수이다. 예를 들어, X=”jimin”, Y=”minji”이면, 둘의 차이는 4이다. 두 문자열 A와 B가 주어진다. 이때, A의 www.acmicpc.net 💬 문제 문자열 과 완전탐색(브루트포스) 에 대한 이해가 있다면, 충분히 풀 수 있는 문제다. 문자열 A와 B가 주어질 때, 두 문자열을 비교해 차이나는 문자 개수를 구해주는 문제이다. - 문자열 A의 길이는 문자열 B보다 작거나 같다 문자열 길이가 작다면, A의 앞이나 뒤에 아무 알파벳을 추가한다고 나와있다. - 이..