[LeetCode] 14. Longest Common Prefix
·
코딩테스트
leetcode.com/problems/longest-common-prefix/ Longest Common Prefix - 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 자신감을 되찾기 위한 쉬운 문제였는데, 문제에게 농락당함 😂 분명 방법을 어떻게 해야할 지 알았는데, 항상 예외를 마주치는 코드가 되어있었다.. + 예외 케이스 해결해서 이 코드도 작동을 했다 ! 케이스 : ["ac","ac","a","a"] 추가조건 : if(j == len-1 && commo..
[LeetCode] 206. Reverse Linked List
·
코딩테스트
leetcode.com/explore/learn/card/recursion-i/251/scenario-i-recurrence-relation/2378/ Explore - LeetCode LeetCode Explore is the best place for everyone to start practicing and learning on LeetCode. No matter if you are a beginner or a master, there are always new topics waiting for you to explore. leetcode.com 순서 바꿀 때 temp 변수 썼던 것처럼 변수 만들어서 담아두고 바꾸는 방법 그리고 Node 말고 내부 int 값만 변경하는 것을 생각했으나, 문제 자체가..
[알고리즘] 복잡도, 빅오(Big-O) 표기법
·
코딩테스트/자료구조∕알고리즘
알고리즘 어떠한 주어진 문제를 풀기위한 절차나 방법을 말한다. 컴퓨터 프로그램을 기술함에 있어 실행 명령어들의 순서를 의미한다. 조건 입력 : 알고리즘은 0 또는 그 이상의 외부에서 제공된 자료가 존재한다. 출력 : 알고리즘은 최소 1개 이상의 결과를 가진다. 유한성 : 알고리즘은 단계들을 유한한 횟수로 거친 후 문제를 해결하고 종료해야 한다. 명확성 : 알고리즘의 각 단계는 명확하여 애매함이 없어야 한다. 효과성 : 알고리즘의 모든 연산들은 사람이 종이와 연필을 이용하여 유한한 시간안에 정확하게 수행할 수 있을 정도로 충분히 단순해야한다. 종류 / 문제유형 그리디 알고리즘 (욕심쟁이 알고리즘, Greedy Algorithm) 현재 상황에서 가장 좋아보이는 것만을 선택하는 알고리즘 "매 선택에서 지금 이..
[LeetCode] 70. Climbing Stairs
·
코딩테스트
leetcode.com/problems/climbing-stairs/ Climbing Stairs - 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 재귀함수 연습하기! 계단을 오를 수 있는 경우의 수 return 한번에 1개 혹은 2개의 계단을 오를 수 있다. 1
[Programmers] [1차] 추석 트래픽
·
코딩테스트
programmers.co.kr/learn/courses/30/lessons/17676
[Programmers] 타겟 넘버
·
코딩테스트
programmers.co.kr/learn/courses/30/lessons/43165 코딩테스트 연습 - 타겟 넘버 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+ programmers.co.kr 타겟 넘버 DFS로 푸는 것 까지는 이해를 했는데, 역시나 코드에서 막힌다. 배열에서 요소 하나를 꺼내서 작업할때마다 더하거나, 빼거나 두개의 경우의 수가 생기고 depth는 배열의 length만큼 진행되는 탐색방법을 사용해야겠다고 생각했다. 가장 깊은 마지막 depth에서 즉, number.length = 1일 때 이 값..
DFS (Depth-First Search) : 깊이 우선 탐색
·
코딩테스트/자료구조∕알고리즘
DFS (Depth-First Search) DFS는 깊이 우선 탐색이라고도 부르며 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘이다. DFS는 스택 자료구조 혹은 재귀함수를 이용하며, 구체적으로 다음과 같이 동작한다. 탐색 시작 노드를 스택에 삽입하고, 방문 처리한다. 스택의 최상단 노드에 방문하지 않은 인접한 노드가 하나라도 있으면 그 노드를 스택에 넣고, 방문 처리한다. 방문하지 않은 인접 노드가 없으면 스택에서 최상단 노드를 꺼낸다. 더 이상 2번의 과정을 수행할 수 없을 때까지 반복한다. Java import java.util.*; public class test { //변수 생성 public static boolean[] visited = new boolean[9]; public stat..
[LeetCode] 1290. Convert Binary Number in a Linked List to Integer
·
코딩테스트
leetcode.com/problems/convert-binary-number-in-a-linked-list-to-integer/ Convert Binary Number in a Linked List to Integer - 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진수 번호가 담겨있는 Linked List 10진수로 표현하기 Return the decimal value of the number in the linked list. static 변수 사용하지..
[Programmers] 더 맵게 - 힙(Heap) JAVA
·
코딩테스트
programmers.co.kr/learn/courses/30/lessons/42626 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같 programmers.co.kr K보다 작은 수들 중에서 가장 작은수와 그 다음 작은 수를 찾는것이 중요했던 문제. 우선순위 큐를 이용하면 쉽게 풀 수 있었다. 우선순위 큐는 별다른 지정이 없다면, 큐에 들어온 값을 오름차순으로 정렬해준다. 풀이 public class Scoville0402 { public static int solution(int[] scoville, int K) { // 기..
[LeetCode] 455. Assign Cookies - Python
·
코딩테스트
leetcode.com/problems/assign-cookies/ Assign Cookies - 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 자바로 풀었던 문제, 파이썬으로 풀어보기 ! JAVA >>> 더보기 자바로 풀었던 내용 import java.util.*; class Solution { public int findContentChildren(int[] g, int[] s) { int content = 0; Arrays.sort(g); Arrays.so..