2025/04 14

[백준] 피보나치 비스무리한 수열

오늘의 학습 키워드메모이제이션, 시뮬레이션 오늘의 회고🌱 오늘의 문제피보나치 문제의 변형된 문제이다. 피보나치 문제가 특정 위치 n의 값에 대하여 n-1, n-2 연속된 두 값의 합으로 구해나갔다면, 이 문제는 n-1, n-3과 같이 한 칸을 띄운 두 값의 합으로 구하는 문제이다.이 외의 조건이 크게 달라지는 부분은 없어 기존의 피보나치 구하는 방식으로 구하면 크게 문제될 것이 없다. 🌱 나의 시도입력 값의 최대값이 116으로 크지 않아 복잡한 알고리즘을 사용하기 보다는 짧고 가독성 좋은 코드를 사용하는 것이 좋다는 판단을 했다. 동일한 연산을 반복하지 않으므로 재귀 함수가 불필요하며, 이전 연산 값을 저장해두고 사용할 수 있는 메모이제이션 정도면 충분하다. 현재 단계적으로 문제를 풀기 때문에 시간 ..

Daily/Coding Test 2025.04.02

[자료구조] 그래프(Graph)와 탐색(Search)

🌱 그래프 그래프는 노드와 간선으로 이루어진 자료 구조이다. 크게 노드와 엣지(간선)으로 구성되어 있다.그래프는 간선으로 연결된 노드들 간 이동할 수 있는데, 이렇게 간선으로 연결된 노드들을 인접하다(Adjacent)고 한다.  🌱 그래프 표현 방법그래프에서 인접한 노드들간의 관계를 나타내는 방법으로 크게 인접 행렬(Adjacency matrix)과 인접 리스트(adjacency list)가 있다.1. 인접 행렬인접 행렬은 단어 그대로 "행렬"의 형태로 인접한 노드 간의 관계를 나타낸 것을 의미한다.행의 노드와 열의 노드 간의 거리를 행렬값으로 확인할 수 있다. 따라서 인접한 노드 조회를 할 때 시간 측면에서 O(1)로 아주 빠르다.그러나 이 방식은 메모리 측면에서 비효율성을 야기할 수 있기에 조심해..

[자료구조] 스택(stack)과 큐(queue)

🌱 스택 (Stack)1. 기본 개념스택은 기본적으로 LIFO(Last In First Out), 혹은 선입후출 구조라고 한다. 즉, 나중에 들어간 것이 맨 처음 나온다. 다시 말 하면 처음 들어간 것이 맨 뒤에 나오는 구조이다. 동굴을 떠올리면 스택 구조를 쉽게 상상할 수 있다.2. 이상 상태스택은 고정된 크기를 갖는 자료구조이다. 따라서 고정된 크기에서 벗어나는 액션을 취할 때 두 가지 이상 상태를 가질 수 있다.1. 오버플로우(Overflow): 자료구조가 수용 가능한 범위를 가득 채운 상태해서, 초과하여 삽입 연산을 수행하려고 할 때 발생하는 현상2. 언더플로우(Underflow): 자료구조에 데이터가 들어 있지 않은 상태에서 삭제 연산을 수행하려고 할 때 발생하는 현상* 예전에는 위 두 용어가..

[문법] 영포자의 토익 박살내기 1일차 - 대명사

오늘 배운 것 🌱1. 인칭 대명사인칭 대명사는 나를 포함한 1인칭, 너를 포함한 2인칭, 그 외 3인칭으로 구성되어 있다.또한 주어로 사용할 수 있는 주격, 소유를 나타내는 소유격, 목적어로 사용할 수 있는 목적격, 이 외 소유 대명사와 재귀 대명사로 사용된다.주의할 점은 남성의 소유격과 소유 대명사가 'his'로 형태가 같으며, 여성의 소유격과 목적격이 'her'로 형태가 같다는 것이다. 2. 인칭대명사의 사용 위치1. 주격은 주어, 목적격은 목적어의 위치에 사용된다.2. 소유격은 명사의 앞에서 명사를 수식한다. 단, 명사를 수식하는 형용사 앞에서도 사용이 가능하다. 또한 명사를 수식하는 형용사를 부사가 수식하고 있다면, 소유격은 그 부사 앞에 위치한다.3. 소유 대명사는 '소유격+명사' 이므로 주어..

Daily/English 2025.04.01
728x90