1. BFS란? BFS란 루트 노드(Node)에서 시작하여 인접한 노드를 방문할 때 너비를 우선으로 방문하는 알고리즘이다. 시작 정점으로부터 가까운 정점을 먼저 방문하고 멀리 떨어져 있는 정점을 나중에 방문하는 순회 방법이다. 이때 한 번 방문한 정점은 다시 방문하지 않는다. 노드 사이의 최단 경로를 구하고자 할 때, 혹은 임의의 경로를 찾고자 할 때 BFS를 이용한다. 2. BFS를 코드로 구현하려면? 1️⃣ 시작하는 정점을 큐에 삽입하여 방문했다는 표시를 남긴다. 2️⃣ 큐의 제일 앞에 있는 원소를 삭제한 후, 해당 원소에 연결돼 있으면서 아직 방문하지 않은 정점을 큐에 삽입한다. 3️⃣ 큐가 비어있을 때까지 2️⃣를 반복한다. 이때 모든 정점(Node)을 한 번, 모든 간선(Edge)을 두 번씩 방..
해당 글은 스프링 부트와 AWS로 혼자 구현하는 웹 서비스라는 책을 읽고 핵심 내용을 정리하기 위해 작성하는 글입니다. 01장 인텔리제이로 스프링 부트 시작하기 1️⃣ Spring 프로젝트 생성하기 초반엔 https://start.spring.io/에서 말고 책에서 진행한 것과 같이 IntelliJ 상에서 프로젝트 파일을 생성하려고 했다. 하지만 IntelliJ도 gradle도 버전이 업데이트 되면서 책과 코드가 다른 부분이 많았기 때문에 공부하면서 계속 해당 문제로 인한 에러가 발생하곤 했다. 이 문제를 해결하기 위해 start.spring.io에서 다시 프로젝트 파일을 생성하여 진행했다. 설정은 다음과 같이 했다. 이후 다운로드 된 파일의 압축을 풀고 build.gradle로 IntelliJ를 실행하..
상태 코드에 대한 글을 다시 작성했습니다. 해당 글을 확인 해주세요! HTTP Response의 첫번째 줄은 Version과 Status code로 구성돼있다. 이 글에서는 Status code 중 주로 사용되는 code에 대해 알아보고자 한다. 1. Status code Status code란 사용자의 요청에 대한 서버의 처리 결과를 나타낸다. 2. 주요 Status code 📌 200번 영역 사용자의 요청에 대한 서버의 처리가 성공하였음을 나타낸다. 200 OK 201 Created 📌 300번 영역 사용자가 요청한 리소스가 다른 경로로 변경된 경우를 나타내는 영역이다. 웹 브라우저에서 300번 영역의 응답 상태 코드가 반환되면, Response Header에 포함되어 있는 Location 헤더의 값..
1. 웹이란 무엇인가? 웹(Web)을 공부하기 위해 기본적인 용어에 대해 알아보자. 웹(Web) : 인터넷상의 서비스 중 HTTP를 이용하여 정보를 공유하는 통신 서비스 웹 서버(Web Server) 사용자가 어떻게 호스트 파일들에 접근하는지를 관리 주소 HTTP 프로토콜을 사용하여 클라이언트의 요청을 처리 및 응답 웹 클라이언트(Web Client) : 서비스를 받는 사용자 2. 데이터를 주고받는 과정의 원리 및 기술 사용자(웹 브라우저)와 웹 서버가 데이터를 주고받는 과정의 원리와 기술을 단계별로 알아보자. 📌 Web Browser(웹 브라우저) Chrome, Edge, Safari 등이 대표적인 웹 브라우저다. 웹 브라우저란 웹에 접속하기 위해 사용하는 소프트웨어다. 웹 브라우저는 HTTP를 통해 ..