목록- (95)
olrlobt
너비 우선 탐색 BFS(Breadth-First Search) 트리나 그래프를 탐색하는 기법 중 하나로, 시작 노드로부터 자식 노드들을 순서대로 탐색하면서 너비를 우선으로 탐색하는 알고리즘이다. BFS는 완전탐색 알고리즘에 속하며, 가중치가 없는 그래프에서 같은 거리에 있는 모든 노드를 탐색한 후, 다음 거리의 노드를 탐색하기 시작하는 방식으로 진행된다. 따라서, 가중치 없는 그래프에서 최단거리를 구하는 문제에 활용될 수 있다. BFS는 Queue를 활용해 다음 방문할 노드를 추적하며, While 반복문을 통하여 문제를 해결한다. BFS 탐색 과정 BFS 알고리즘의 기본 단계는 다음과 같이 요약할 수 있다. 시작 노드에서 시작하고 대기열(Queue)에 넣는다. 대기열에서 노드를 제거하고 검사한다.(pol..
마커 클러스터러란? Cluster : 무리 수많은 데이터들에 의해 마커가 좌측의 사진처럼 표기된다면, 사용자 입장에서 자료를 확인하기 불편할 수 있다. 이때, 우측 사진과 같이 마커 클러스터러를 사용하여, 한눈에 보기 편하게 지도에 표기할 수 있다. 마커 클러스터러 라이브러리 추가 기존에 사용하던 script문 App Key 뒤에 "libraries=clusterer"를 추가해 준다. 아직 app key를 발급받지 않았다면, 아래 게시글을 참고한다. https://olrlobt.tistory.com/38 [Spring] 카카오 지도 / Kakao Map Web API 사용해보기 카카오 지도 Kakao Map WebAPI Kakao 지도 API는 웹사이트와 모바일 애플리케이션에서 지도를 이용한 서비스를 제..
지도 마커란? 마커는 지도에서 특정 위치를 나타내는 표기물로, 사용자가 지도에서 특정 위치를 손쉽게 볼 수 있고, 손쉽게 클릭할 수 있게 하는 도구이다. 보통 마커는 클릭 이벤트로, 해당 장소에 대한 정보를 제공해 준다. https://apis.map.kakao.com/web/sample/basicMarker/ 이 포스팅은 카카오 Map API 공식 가이드를 참고하여 제작하였다. 준비하기 카카오 지도 API 본격적으로 마커를 표기하기에 앞서, 카카오 지도 API를 사용해 보지 않았다면 이 전 게시물을 참고하길 바란다. https://olrlobt.tistory.com/38 [Spring] 카카오 지도 / Kakao Map Web API 사용해보기 카카오 지도 Kakao Map WebAPI Kakao 지도..
카카오 지도 Kakao Map WebAPI Kakao 지도 API는 웹사이트와 모바일 애플리케이션에서 지도를 이용한 서비스를 제작할 수 있도록 다양한 기능을 제공하고 있다. https://apis.map.kakao.com/ APP Key 발급받기 https://apis.map.kakao.com/ 카카오 지도를 사용하기 위해서는 먼저, APP KEY를 발급받아야 한다. 위의 링크로 사이트에 접속하여 카카오 계정으로 로그인한 후, 진행한다. 우측 상단의 버튼 클릭 화면 중앙, 애플리케이션 추가하기 클릭 앱 이름, 사업자 명 입력 > 체크박스 체크 > 저장하기 공부 목적의 경우, 앱 이름에는 프로젝트 명을. 사업자 명에는 자신의 이름을 적는다. 애플리케이션이 추가된 것을 확인하고, 해당 애플리케이션 클릭 첫 ..
Error : Multiple annotations found at this line: - The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 프로젝트 생성 후 JSP 상단에서 위와 같은 에러가 발생했다. 발생 원인 : 직역하면, Java 빌드 경로에서 HttpServlet을 찾을 수 없다는 뜻으로, jsp 파일이 실행될 웹 서버를 찾지 못해서 생기는 오류이다. 스프링 레거시에서는 프로젝트에서 웹 서버를 설정해 줌으로써 해결할 수 있고, 스프링 부트에서는 javax.servlet-api를 pom.xml에 추가해줌으로써 해결할 수 있다. 스프링 부트 해결 방법 : 1. pom.xml에 javax.servle..
Collections 클래스 (java.util.Collections) Collections 클래스는 Collection 인터페이스를 구현하는 List, Set, Map 등의 클래스에 대한 여러 추가 기능들을 제공하는 클래스이다. 대표적인 기능으로 정렬(sort), 병합(merge), 검색(search) 등의 기능을 제공하는 메서드가 있다. Collections 사용 가능한 자료구조 List Set Map Queue Deque ArrayList LinkedList Vector Stack HashSet LinkedHashSet TreeSet ArrayDeque PriorityQueue HashMap LinkedHashMap TreeMap EnumMap WeakHashMap IdentityHashMap Co..
깊이 우선 탐색(DFS, Depth-First Search) 트리나 그래프를 탐색하는 기법 중 하나로, 시작 노드에서 자식의 노드들을 순서대로 탐색하면서 깊이를 우선으로 탐색하는 알고리즘이다. 깊이를 우선시하여 모든 경우의 수를 탐색하기 때문에, 완전탐색 알고리즘에 속하기는 하지만, 항상 완전탐색으로 사용되지는 않는다. DFS는 주로 반복문을 활용하거나, 재귀문을 통하여 구현된다. DFS의 탐색 과정 DFS의 기본 탐색 과정은 특정 정점에서 시작하여 역추적(backtracking) 하기 전에 각 분기를 따라 가능한 한 멀리 탐색하는 것이다. 탐색하는 과정은 다음과 같다. 현재 노드를 방문한 것으로 표시한다. 방문한 표시가 되어 있지 않은 각각의 인접한 정점을 탐색한다. 더 이상 방문하지 않은 정점이 없으..
배열 (Array) 배열이란 선형 자료구조(Data Structure)중 하나로 동일한 타입의 연관된 데이터를 메모리에 연속적으로 저장하여 하나의 변수에 묶어서 관리하기 위한 자료 구조이다. Arrays 클래스 (java.util.Arrays) java.util 패키지의 일부로, 배열을 다루기 위한 다양한 메서드를 제공한다. 특정 값으로 요소를 정렬하거나, 검색 및 채우는 것과 같은 일반적인 배열 작업을 제공한다. 1차원 배열의 출력 : Arrays.toString(int [ ] arr) 지정된 배열을 문자열의 형태로 반환한다. 일반적으로 배열을 반복문을 사용하지 않고 출력하기 위해 사용한다. public static void main(String[] args) { int [] arr = {0,1,2,3..