전체 글(71)
-
[백준 / BOJ] 7576번 토마토 ( Node js / Javascript )
https://www.acmicpc.net/problem/7576 문제 풀이토마토는 BFS의 대표 문제들 중 하나입니다. 만약 BFS 혹은 그래프 탐색 자체에 대한 지식이 부족하다면 아래 링크를 참고하시길 바랍니다. 너비 우선 탐색(BFS)와 깊이 우선 탐색(DFS)BFS(Breadth-First Search)와 DFS(Depth-First Search)는 그래프 탐색 알고리즘의 두 가지 주요 유형으로, 그래프의 데이터를 탐색하는 데 사용됩니다. 이 두 알고리즘을 이해하기 위해서는 그래프가 무엇인dnd0707.tistory.com 본인이 떠올린 문제 해결 방안은 다음과 같습니다.1. 배열을 순회하며 1의 위치들 즉, 시작점들을 큐에 넣어준다.2. 시작점들이 담겨있는 큐로 BFS를 실행한다. 방문 ..
2024.05.22 -
프론트엔드 개발자가 되고 싶다. Day + 303
1. 2024년 백준 스트릭 모두 채우기 Day + 164 에서 세웠던 첫번째 목표인 24년 백준 스트릭 모두 채우기는 순조롭게 진행되고 있다. 이전 스트릭 최장기록도 갱신한지 2주정도가 지났다. 또한 Day + 120 에서 세웠던 첫번째 목표인 골드1 달성까지도 얼마 남지 않은 것 같다. 처음에는 알고리즘의 종류는 너무나 방대하고 다양해서 문제를 풀 때 알고리즘은 어느 정도 도움이 될 뿐 결국엔 문제 해결 능력과 사고력으로 막연하게 풀어야 된다고 생각했다. 하지만 점차 티어가 오르며 느낀 점은 첫째로 점점 문제들의 난이도가 높아질수록 해당 문제의 알고리즘을 모르면 푸는게 불가능에 가깝다는 점이고, 둘째는 생각보다 알고리즘의 종류는 유한하고 보통 코딩테스트 문제들에서 자주 등장하는 알고리즘은 더욱 한..
2024.05.18 -
너비 우선 탐색(BFS)와 깊이 우선 탐색(DFS)
BFS(Breadth-First Search)와 DFS(Depth-First Search)는 그래프 탐색 알고리즘의 두 가지 주요 유형으로, 그래프의 데이터를 탐색하는 데 사용됩니다. 이 두 알고리즘을 이해하기 위해서는 그래프가 무엇인지에 대한 개념이 선행되어야 합니다. 그래프에 대한 개념이 부족하신 분들은 아래 포스팅을 참고해주시면 감사하겠습니다. 그래프 ( Graph ) 탐색 이론1. 그래프의 구성요소 그래프의 기본 구성 요소는 정점(Vertex, 혹은 노드(Node))과 간선(Edge)입니다. 정점은 그래프의 기본 단위로, 위치나 상태 등을 나타낼 수 있고, 간선은 두 정점을 연결하는 선dnd0707.tistory.com 너비 우선 탐색 (BFS)너비 우선 탐색 (BFS) 는 그래프의 시작 정점에..
2024.05.18 -
JWT(Json Web Token) 이해하기
JWT (Json Web Token)JWT(Jason Web Token)는 인터넷에서 정보를 안전하게 전송하기 위해 사용되는 방법 중 하나입니다. 단순히 말해서, JWT는 작은 정보 조각들을 안전하게 교환할 수 있도록 돕는 "티켓" 또는 "증명서"와 같습니다. 1. JWT의 구조와 무결성이 티켓은 세 부분으로 구성되어 있으며, 각 부분은 점(.)으로 구분됩니다.Header (헤더): 헤더는 주로 토큰의 타입을 선언하고, 정보를 암호화하는 데 사용된 알고리즘의 종류를 말합니다. 예를 들어, 종종 "JWT"와 "HS256"라는 알고리즘 이름을 볼 수 있습니다.Payload (페이로드): 페이로드는 토큰 안에 실제로 담겨 있는 데이터입니다. 여기에는 사용자 ID, 사용 권한, 토큰이 만료되는 시간 등이 ..
2024.05.16 -
재귀 함수 (recursive function) 의 동작
1. 재귀 함수란? 코드 내에서 본인을 호출하는 함수를 재귀함수라고 한다. 하지만 단순히 아래와 같이 자기 자신을 호출만 한다면 함수는 위 송강호씨처럼 영원히 자기 자신을 호출하기를 반복하게 될 것이다. function recursive() { recursive(); } recursive(); 이를 방지하기 위해서 재귀함수는 코드 내에 탈출 조건을 포함하고 있어야 하고, 본인을 호출할 때마다 입력 파라미터가 탈출 조건에 수렴하는 양상으로 변화해야 한다. function recursive(n) { if(n < 0){ //탈출 조건 return; } recursive(n - 1); //변화하는 파라미터, 0으로 수렴 } recursive(5); 2. 반복문 vs 재귀 함수 대부분의 재귀 함수 동작은 변수값을..
2024.04.13 -
그래프 ( Graph ) 탐색 이론
1. 그래프의 구성요소 그래프의 기본 구성 요소는 정점(Vertex, 혹은 노드(Node))과 간선(Edge)입니다. 정점은 그래프의 기본 단위로, 위치나 상태 등을 나타낼 수 있고, 간선은 두 정점을 연결하는 선으로, 두 정점 사이의 관계를 표현합니다. 이러한 구성 요소들을 바탕으로, 그래프는 복잡한 네트워크 관계를 모델링하는 데 사용됩니다. 2. 그래프의 형태 그래프는 크게 방향성의 유무와 가중치의 유무에 따라 분류할 수 있습니다. 2-1. 무방향 그래프, 방향 그래프 무방향 그래프(Undirected Graph): 간선에 방향성이 없는 그래프로, 간선이 (A, B)라면 A와 B는 서로 연결되어 있음을 나타냅니다. 방향 그래프(Directed Graph): 간선에 방향성이 있는 그래프로, 간선이 (A..
2024.03.29