loading
반응형

Java 114

[백준알고리즘/기본 수학 1단계] 10250번 문제 : ACM 호텔

안녕하세요 백준 알고리즘 단계별로 풀어보기 8단계 10250번 문제 ACM 호텔을 풀어봤습니다 기본 수학 문제를 차근차근 풀어봤다면 어렵지 않게 풀 수 있는 문제일겁니다 제가 풀은 방법에 대해서 설명하겠습니다 문제 링크입니다 https://www.acmicpc.net/problem/10250 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 문제 ACM 호텔 매니저 지우는 손님이 도착하는 대로 빈 방을 배정하고 있다. 고객 설문조사에 따르면 손님들은 호텔 정문으로부터 걸어서 가장 짧은 거리에 있는 방..

[JAVA] TreeSet 개념과 사용법 정리

안녕하세요 이번 포스팅에서는 TreeSet에 대해서 알아보겠습니다 목차 TreeSet이란? TreeSet 선언하기 TreeSet 값 추가하기 TreeSet 값 삭제하기 TreeSet 크기 구하기 TreeSet 값 출력하기 TreeSet이란? 자바의 SortedSet 인터페이스 중 하나입니다 HashSet과 비슷한 구조를 가져서 중복 데이터를 저장하지 않고 저장 순서를 유지하지 않는다는 성질을 가집니다 HashSet과 다른 점은 TreeSet은 이진 탐색 트리(BinarySearchTree) 구조로 되어있습니다 이진 탐색 트리에서 검색능력을 더 향상시킨 레드-블랙-트리로 구현되어 있습니다 TreeSet 선언하기 import java.util.Collections; import java.util.TreeSe..

[JAVA] LinkedHashSet의 개념과 사용법

안녕하세요 이번 포스팅에서는 LinkedHashSet의 개념과 사용법에 대해서 알아보겠습니다! 목차 LinkedHashSet이란? LinkedHashSet 선언하기 LinkedHashSet 값 추가하기 LinkedHashSet 값 삭제하기 LinkedHashSet 크기 구하기 LinkedHashSet 값 출력하기 LinkedHashSet이란? HashSet과 동일한 구조를 가지지만 HashSet은 순서를 관리하지 않아 값을 출력할 때마다 다른 순서대로 출력이 됩니다 하지만 LinkedHashSet은 삽입된 순서대로 반복합니다 HashSet과 동일한 특징들이 있는데 마찬가지로 중복 값을 허용하지 않습니다 LinkedHashSet 선언하기 import java.util.Arrays; import java.u..

[JAVA] Deque/ArrayDeque(데크) 개념 및 사용법 정리

안녕하세요 이번 포스팅에서는 Deque와 ArrayDeque에 대해서 알아보겠습니다 목차 Deque란? Deque 선언하기 Deque 값 추가하기 Deque 값 삭제하기 Deque 크기 구하기 Deque 값 출력하기 Deque란? Deque란 Double-Ended Queue의 줄임말로 큐의 양쪽에서 데이터를 삽입과 삭제를 할 수 있는 자료구조를 의미합니다 java.util 패키지에 소속되어 있고 Null요소는 사용을 하지 못 합니다 사용하기에 따라서 Stack으로 사용될 때는 Stack보다 빠를 수 있고 대기열에서 사용될 때는 LinkedList보다 빠를 수 있습니다 Deque 선언하기 Deque que = new ArrayDeque(); // 타입 설정x Deque demo = new ArrayDeq..

[백준알고리즘/기본 수학 1단계] 2869번 문제 : 달팽이는 올라가고 싶다(자바/JAVA)

안녕하세요 백준 알고리즘 단계별로 풀어보기 8단계 2869번 문제 달팽이는 올라가고 싶다를 풀어봤습니다 이 전에 풀었던 문제 1712번 손익분기점과 비슷한 문제로 그렇게 어렵지 않게 풀었습니다 제가 풀은 방법에 대해서 설명하겠습니다 문제 링크입니다 https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 문제 땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다. 달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 후에는 미끄러..

[백준알고리즘/기본 수학 1단계] 1193번 문제 : 분수찾기(자바/JAVA)

안녕하세요 백준 알고리즘 단계별로 풀어보기 8단계 1193번 문제 분수찾기를 풀어봤습니다 처음 원리를 파악하는 것은 어렵지 않은데 이걸 프로그래밍으로 구현을 하려니 생각이 많아지던 문제였습니다 제가 풀은 방법 한 개와 다른 분들이 풀은 문제를 참고해 작성한 코드 두 개에 대해서 설명하겠습니다 문제 링크입니다 https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 문제 무한히 큰 배열에 다음과 같이 분수들이 적혀있다. 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … … 3/1 3/2 3/3 … … … 4/1 4/2 … … … … 5/1 … … … … … … … ..

[JAVA] Priority Queue(우선순위 큐) 개념 및 사용법 정리

안녕하세요 이번 포스팅에서는 Priority Queue에 대해서 알아보겠습니다 목차 Priority Queue(우선순위 큐)란? Priority Queue 선언하기 Priority Queue 값 추가하기 Priority Queue 값 삭제하기 Priority Queue 크기 구하기 Priority Queue 값 출력하기 Priority Queue(우선순위 큐)란? Priority Queue는 Queue와 구조가 비슷합니다 Queue는 FIFO(First In First Out)구조로 먼저들어온 순서대로 데이터가 나가게 되지만 Priority Queue란 데이터의 우선순위를 정해 우선순위가 높은 순서대로 나가게됩니다 우선순위 큐는 우선순위 힙으로 구현을 할 수 있습니다 데이터를 삽입할 때 우선순위의 최대,..

[백준알고리즘/기본 수학 1단계] 2292번 문제 : 벌집(자바/JAVA)

안녕하세요 백준 알고리즘 단계별로 풀어보기 8단계 2292번 문제 벌집을 풀어봤습니다 처음 문제에서 공식을 사용해서 풀은 기억이 있어서 공식을 찾다가 반복문을 사용하니 금방 풀린 문제입니다 ㅠㅜ 너무 어렵게 생각했어... 이제 제가 풀은 방법에 대해서 설명하겠습니다 문제 링크입니다 https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 문제 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌..

[JAVA] Queue의 개념 및 사용법 정리

안녕하세요 이번 포스팅에서는 Queue에 대해서 알아보겠습니다 목차 Queue란? Queue 선언하기 Queue 값 추가하기 Queue 값 삭제하기 Queue 크기 구하기 Queue 값 출력하기 Queue란? Queue란 Collection 프레임워크의 일부이며 java.util 패키지에 소속되어 있습니다 Queue는 사전적으로 "줄을 서다"를 의미합니다 줄을 서서 기다린다는 것처럼 먼저 들어오면 데이터가 먼저 나가는 형식입니다 일명 FIFO(FirstInFirstOut) 방식입니다 반대로 Stack은 LIFO방식이라 두 개가 많이 비교됩니다 위의 그림에서 볼 수 있지만 큐는 앞과 뒤가 다른 역할을 수행합니다 큐의 앞 부분은 front는 삭제 연산만 수행 큐의 뒷 부분은 rear는 삽입 연산만 수행합니다..

[JAVA] Vector의 개념 및 사용법

안녕하세요 이번 포스팅에서는 Vector에 대해서 알아보겠습니다 목차 Vector란? Vector 선언하기 Vector 값 추가하기 Vector 값 변경하기 Vector 값 제거하기 Vector 크기 구하기 Vector 값 출력하기 Vector란? Vector란 Collection 프레임워크의 일부이며 java.util 패키지에 소속되어 있습니다 ArrayList와 동일한 구조를 가지며 배열의 크기가 늘어나고, 줄어듬에 따라서 자동으로 크기가 조절이 됩니다 Vector의 특이한 점이라면 항상 동기화되어있고 Collection 프레임워크에 없는 메서드들을 사용이 가능합니다 하지만 동기화라는 특징이 있어 스레드가 아닌 환경에서는 거의 사용이 되지 않습니다 그리고 항상 동기화되므로 스레드 환경에서의 안정성은 ..

반응형