본문 바로가기

알고리즘

(56)
미로 탈출 https://school.programmers.co.kr/learn/courses/30/lessons/159993 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   소감DFS 완전깊이탐색연습하려고 골랐지만...최단 거리를 구할때는 BFS가 적합하다고 한다 최소 시간을 계산하기 위해서는1) 출발 지점에서 레버까지2) 레버에서 출구까지의최단 경로를 찾아야 합니다. 아 머리 아파.... 예민해지는 중..  DFS 수도 코드import java.util.Arrays;public class 미로탈출 { //https://school.programmers.co.kr/..
조이스틱 https://school.programmers.co.kr/learn/courses/30/lessons/42860 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr      수도코드import java.util.ArrayList;import java.util.Collections;import java.util.List;public class 조이스틱 { //https://school.programmers.co.kr/learn/courses/30/lessons/42860 public static void main(String[] args) { 조이스틱.Solut..
Greedy 큰 수 만들기에서재귀함수를 연습하려고 했는데시간초과가 나왔다. 이럴 때는 그리디를 선택해야한다.코드에서 스택을 사용한다.코드 해석은 했지만, 왜 스택에 넣고 빼고 하는지 이해가 되지 않아서 정리하려고 한다.프로그래머스 그리디 문제 목록https://school.programmers.co.kr/learn/courses/30/parts/12244 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  백준 그리디 문제 목록https://www.acmicpc.net/workbook/view/4380  개념https://www.youtube.com/watch?v=8V2zw..
DFS 작성 중..  그래프: 여러 개체들이 연결 되어있는 자료 구조 DFS == 한놈만 끝까지 판다. 재귀 함수 사용, 모든 경우의 수를 확인BFS == 여러개를 하나 씩 본다, Queue, LinkedList 사용, 순서가 보장 되어야 한다 DFS     BFS    재귀 함수메모리에 쌓이는 방법https://www.youtube.com/watch?v=yio6FyP1N2k    재귀함수는 스택에 쌓인다3, 2, 1, 0 -> 재귀 함수 전 printf 종료는 역순으로 종료된다0, 1, 2, 3 -> 재귀 함수 후 printf 반드시 종료를 넣어야 한다 조합 문제에서https://www.youtube.com/watch?v=HYKpunR1Nto  Combinationn! / n-r 였나? 7P3 == 7*6*5..
큰 수 만들기 https://school.programmers.co.kr/learn/courses/30/lessons/42883 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 재귀함수 어려워통곡의 벽🥲3시간.. 재귀함수 깨우쳐보겠다고 코드 두드리는데아놔 모르겠다재귀 함수를 마음껏 주무르는 날이 올까?재귀 함수 잘 다루는 사람 보면 멋져죽겠음..문제 해석배열에서 앞에서 하나씩 한글자 뽑고, 나머지에서 고르는 거네..Combination인거 알겠는데..구현 어떻게 했더라?재귀 사용 다시 보니까..Permutation이네.. 순서가 중요하니까{1,2,3}, {1,3,2}, {..
자릿수 더하기 https://school.programmers.co.kr/learn/courses/30/lessons/12931 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.krs.split("")public class 자릿수더하기 { public static void main(String[] args) {// N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 자릿수더하기.Solution solution = new 자릿수더하기.Solution(); int result = solution.solution(123); System.out.println(..
N개의 최소공배수 https://school.programmers.co.kr/learn/courses/30/lessons/12953 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  느낀점재귀함수 사용이 아직 익숙하지 않다. 배열 길이가 0은 지문에서 없다고 함.배열 길이가 1일 때 return 1; 은 아니다. 생각나는 아이디어로 푸는 방법이 내 머리에서 나온거라서 제일 익숙하지만,유클리드 호제법을 쓰면 코드가 줄어든다.내가 푼 방식public class N개의최소공배수 { public static void main(String[] args) { Solution soluti..
최대공약수, 최소공배수 https://school.programmers.co.kr/learn/courses/30/lessons/12940 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 개념  // n m return// 2 1 [1, 2]// 3 12 [3, 12]// 2 5 [1, 10]// 14 12 [2, 84] 부가적 개념소수(Prime Number): 1과 자기 자신 만을 약수로 가지는 수들을 소수 100이하 소수 == 총 25개 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 6..