자료구조

·자료구조
누적 합(Prefix Sum) 알고리즘은 배열의 부분 합을 빠르게 계산하기 위한 유용한 도구입니다.  이는 특히 여러 번의 부분 합 계산이 필요한 상황에서 매우 효율적입니다. 이 글에서는 누적 합의 개념, 기본적인 구현 방법, 그리고 이를 활용한 문제 해결 방법에 대해 자세히 설명하겠습니다. 누적 합(Prefix Sum)란❓누적 합은 주어진 배열의 각 원소까지의 합을 저장한 배열입니다. 수열 An에 대해서 구간[1, 1]의 합, 구간[1, 2]의 합, 구간[1, 3]의 합,..., [1, n]의 합을 누적 합이라고 합니다. 예를 들어, 배열 arr가 주어졌을 때,  prefixSum[i]는 arr [0]부터 arr [i-1]까지의 합을 의미합니다. 예를 들어,  i = 3일 때 prefixSum[3] ➡..
·자료구조
자바를 활용하다 보면 데이터를 먼저 들어온 순서대로 처리해야 하는 상황과 함께 데이터를 양쪽 끝에서 효율적으로 추가하거나 삭제해야 하는 경우가 있습니다. 이때 사용할 수 있는 것이 덱(Deque)입니다. 이번 포스팅에서는 덱(Deque)에 대해서 알아보겠습니다. Deque 덱이란 ❓ 덱(Deque)은 자바에서 제공하는 자료구조 중 하나로, 양 끝에서 삽입과 삭제가 모두 가능한 더블 엔드 큐(Double Ended Queue)의 줄임말의선형 자료구조입니다.  큐(Queue)에서는 FIFO(First-In-First-Out) 방식으로 동작스택(Stack)에서는 LIFO(Last-In-First-Out) 방식으로 동작 덱은 큐(Queue)와 스택(Stack)의 특징을 모두 가지고 있어서 양쪽 끝에서 빠르게 데..
·자료구조
그래프는 많은 컴퓨터 과학 문제에서 필수적인 데이터 구조입니다.  그래프를 사용하면 복잡한 네트워크 구조를 모델링하고 다양한 문제를 해결할 수 있습니다.  예를 들어, SNS에서 친구 관계를 나타내거나, 도로망에서 최단 경로를 찾는 문제 등을 해결할 수 있습니다.  Graph란 ❓Graph는 객체 또는 개체 간의 관계를 표현하는 자료구조입니다. 객체(Node)들 간의 연결(Egde)로 구성됩니다. Graph의 정의그래프는 두 가지 주요 구성 요소로 이루어집니다. 노드(정점, Vertex)그래프에서 개별적인 객체 또는 노드를 나타냅니다.간선(엣지,Edge)노드 간의 연결을 나타내며, 노드 간의 관계를 정의합니다.그래프는 노드와 간선의 집합으로 표현되며 다음과 같이 표현됩니다.G = (V,E)G : Grap..
·자료구조
자바를 활용하다 보면 중복되지 않는 유일한 값을 저장하고 관리해야 할 때가 있습니다.  이럴 때 사용할 수 있는 클래스가 HashSet입니다.  HashSet은 고유한 요소들을 저장하는 데 최적화된 컬렉션 클래스입니다. 이번 글에서는 HashSet의 선언 방식, 장단점, 주요 메서드, 사용 예제 등을 자세히 알아보겠습니다. Hash란 ❓HashSet을 제대로 이해하기 위해서는 해시(Hash) 개념을 아는 것이 매우 중요합니다. 해시는 컴퓨터 과학에서 데이터 관리와 검색을 효율적으로 하기 위해 사용되는 중요한 개념입니다. 즉 임의의 길이를 갖는 데이터를 고정된 길이의 데이터로 변환(매핑)하는 과정 이때 사용되는 함수가 해시 함수(Hash Function)입니다. 해시 함수는 입력 데이터를 받아, 고정된 ..
지누박
'자료구조' 카테고리의 글 목록