728x90
728x90
CS/알고리즘2023. 1. 29. 18:06[알고리즘] 깊이 우선 탐색(DFS)

깊이 우선 탐색 ( Depth-First Search )루트 노드에서 시작해 다음 분기(branch)로 넘어가기 전에 해당 분기를 완벽하게 탐색하는 방법 특징1. 모든 노드를 방문하고자 하는 경우에 사용한다.2. 단순 검색 속도는 너비 우선 탐색(BFS)에 비해 느리다.3. 검색이 아닌 순회를 할 경우 많이 사용한다.공통 상위를 가지는 아래 리프 노드들을 한방에 잘라내는게 가능하기 때문에 백트래킹에 사용된다.미로를 탐색할 때 한 방향으로 갈 수 있을 때까지 계속 가다가 더 이상 갈 수 없게 되면 다시 가장 가까운 갈림길로 돌아와서 다른 방향으로 다시 탐색을 진행하는 방법과 유사하다.  장점1. 현 경로상의 노드들만 기억하면 되기 때문에 저장 공간의 수요가 비교적 적다.2. 목표 노드가 깊은 단계에 있을 ..

CS/알고리즘2023. 1. 27. 10:04[알고리즘] 너비 우선 탐색(BFS) - Java

너비 우선 탐색 ( Breadth-first search )트리나 그래프를 방문 또는 탐색하는 방법으로 루트 노드에서 시작해서 인접 노드를 먼저 탐색하는 방법.   탐색 방법1. 루트노드에서 시작한다.  2. 자식노드들을 저장한다.  3. 저장되어있는 노드를 방문하며 저장되어있는 노드들의 자식들을 저장하며  4. 위의 과정을 모든 노드를 방문할 때 까지 반복하며 완료 시 탐색을 종료한다.   특징1. 어떤 노드를 방문했는지 반드시 검사 해야 한다.2. Queue를 사용하는 경우가 일반적이며 재귀적으로 동작하지 않는다.3. Prim, Dijkstra알고리즘과 유사하다.  장점1. 노드의 수가 적고 깊이가 얕은 경우 빠르게 동작할 수 있다.2. 단순 검색 속도가 깊이 우선 탐색(DFS)보다 빠르다.3. 너비..

MySQL서버 접속 시 No directory, logging in with home=/ 에러
트러블슈팅2023. 1. 26. 18:04MySQL서버 접속 시 No directory, logging in with home=/ 에러

에러 구름IDE를 이용하여 MySQL과 연동하는 과정에서 MySQL 서버 시작 시 홈 디렉토리가 "/" 로 설정되어있어서 발생 해결 아래 세 줄을 차례로 입력 sudo service mysql stop sudo usermod -d /var/lib/mysql/ mysql sudo service mysql start

[Java] 개인정보 수집 유효기간 - 2023 카카오 블라인드 Lv1 프로그래머스
코딩테스트/프로그래머스2023. 1. 24. 15:12[Java] 개인정보 수집 유효기간 - 2023 카카오 블라인드 Lv1 프로그래머스

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 String형식의 날짜(2022.05.05)를 형변환 한 뒤, Day로 치환하여 풀었다. 모든 달의 날짜가 28일까지라는 것이 조건이었기 때문에, 월별로 날짜의 수가 다른 것을 고려할 필요가 없었다. Int로 형변환 하는 메서드 substring을 활용하여 년, 월, 일을 뽑아내어 int형태의 날짜로 변환하였다. 문제 조건에서 년도는 2000~2022년도 까지라고 했기때문에 뒤의..

[JavaScript] localStorage를 활용한 todoList 만들기
공부방2023. 1. 22. 21:05[JavaScript] localStorage를 활용한 todoList 만들기

HTML todos Left click to toggle completed. Right click to delete todo input에서 입력된 값을 ul의 li에다가 담을 것이며, 스토리지를 이용해 새로고침해도 리스트가 남아있게 할 예정이다. 자바스크립트 공부를 위함이니 css는 맨 아래에다가 작성 해 두겠다. JS 새로고침 이후에도 유지되기 위해 스토리지를 활용할 것이다. localStorage에 데이터를 넘겨주기 위해 배열을 JSON.stringify() 메서드로 포맷팅한 뒤 넘겨주었다. const form = document.querySelector('form'); const input = document.querySelector('input'); const ul = document.queryS..

[JavaScript] 웹 스토리지(Web Storage)
공부방2023. 1. 22. 20:14[JavaScript] 웹 스토리지(Web Storage)

웹 스토리지 ( Web Storage ) 기존 쿠키의 문제점을 보완하기 위해 사용한다. https://mag1c.tistory.com/187 쿠키와 세션 (Cookie & Session) HTTP 프로토콜의 특징 비연결성 ( Connectionless ) 클라이언트가 서버에 요청(Request)할 때, 그에 대한 응답(Response)을 한 후, 연결을 끊는다. 비상태성 ( Stateless ) 클라이언트의 상태 정보를 가지지 않는 mag1c.tistory.com 웹 스토리지의 특징 1. 브라우저 내부에 Key, Value 쌍을 저장하는 공간이다. 2. 네트워크 요청 시 서버로 전송되지 쿠키에 비해 않아 많은 자료보관이 가능하다. (2MB이상) 3. 서버가 HTTP 헤더를 통해 스토리지 객체를 조작할 수..

[JavaScript] 쿠키(Cookie) 사용하기
공부방2023. 1. 22. 16:43[JavaScript] 쿠키(Cookie) 사용하기

쿠키에 대한 자세한 설명은 아래에 https://mag1c.tistory.com/187 쿠키와 세션 (Cookie & Session) HTTP 프로토콜의 특징 비연결성 ( Connectionless ) 클라이언트가 서버에 요청(Request)할 때, 그에 대한 응답(Response)을 한 후, 연결을 끊는다. 비상태성 ( Stateless ) 클라이언트의 상태 정보를 가지지 않는 mag1c.tistory.com 자바스크립트에서의 Cookie 사용하기 document.cookie 프로퍼티를 이용하여 생성, 삭제 및 조회가 가능하다. document.cookie는 name=value 쌍으로 구성되어 있고, 각 쌍은 ; 로 구분한다. 쌍 하나는 하나의 독립된 쿠키를 나타내며, ; 을 기준으로 document...

쿠키와 세션 (Cookie & Session)
CS/네트워크2023. 1. 21. 15:37쿠키와 세션 (Cookie & Session)

HTTP 프로토콜의 특징비연결성 ( Connectionless )클라이언트가 서버에 요청(Request)할 때, 그에 대한 응답(Response)을 한 후, 연결을 끊는다.비상태성 ( Stateless )클라이언트의 상태 정보를 가지지 않는다. 비연결성과 비상태성을 보완하여 서버가 클라이언트를 식별하게 해 주는 것이 쿠키와 세션이다.   쿠키 ( Cookie )클라이언트 로컬에 저장되는 Key, Value형태의 데이터파일이다.사용자 인증이 유효한 시간을 명시할 수 있고, 유효시간이 정해지면 브라우저가 종료되어도 인증이 유지된다.클라이언트의 상태 정보를 로컬에 저장했다 참조하는 형식이다.300개의 쿠키를 저장할 수 있으며, 하나의 도메인당 20개의 값만 가질 수 있다. 쿠키 하나의 값은 4KB까지 저장 가..

728x90
728x90
image