전체 글89 백준 1697 (숨바꼭질, BFS) 문제보고 맨 처음 든 생각 : 가장 빠른시간? 무슨 알고리즘이지? BFS,DFS인가? BFS로 풀어본 코드 import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.LinkedList;import java.util.Queue;import java.util.StringTokenizer;public class Main { // 수빈이와 동생의 최대 위치는 100,000입니다. // 배열 인덱스를 100,000까지 사용하기 위해 크기를 100,001로 설정합니다. static final int MAX = 100001; // dist[i]는 위치 i에 도달하는 최소 시간을 저장합니다. (0이면 미방문) .. 2025. 11. 29. Docker란 무엇인가 Docker란?Docker란 컨테이너 기술이다.컨테이너를 생성하고 관리하는 도구이다.정확히 무엇을 의미할까?컨테이너는 표준화된 소프트웨어 유닛이다.컨테이너는 기본적으로 코드 패키지이며, 해당 코드를 실행하는데 필요한 종속성과 도구가 포함되어있다.이를 통해 사용자는 이를 사용하여 동일한 환경에서 작업을 해 나갈 수 있다.왜 중요할까?왜 독립적인 표준화된 패키지를 원할까?예를들어 Node.js 버전이 각각의 로컬에서 다르다면 누구는 실행되고, 누구는 실행이 안돠는 문제가 발생할 수 있다.왜 Docker인가?OS에 가상머신을 두고, 그 가상머신에 코드를 옮겨서 실행할 수 도 있다.하지만 이는 문제가 발생한다오버헤드 문제(가상머신 별 동일하게 필요한 많은 파일들이 존재하고 머신이 많아질 수록 우리 컴퓨터의 하드.. 2025. 11. 28. 백준 11279 (최대 힙) 일단 구현해보자라는 생각으로 최대 힙 사용 안하고 List로 풀어본 문제백준은 JDK 11을 사용, 내 IDE는 JDK 25를 사용 JDK 21부터 List에도 getLast(), removeLast() 추가됨🔹 List 인터페이스에 다음 메서드가 추가됨:getFirst()getLast()removeFirst()removeLast()이 기능은 Java 21 이후부터만 사용 가능하다. package ex;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Collections;import java.util.List;pu.. 2025. 11. 21. 백준 1654 (랜선 자르기) lower bound와 upper bound의 개념 lower bound : arr = {1,1,2,5,6,7} -> 1을 찾아야 한다면 arr[0]이 나옴 -> 찾는 값의 가장 왼쪽 인덱스(찾는 값의 가장 첫 번째 인덱스) if keyupper bound : 1을 찾아야 한다면 arr[2] -> 찾는 값보다 큰 첫 번째 인덱스 if key key 이상 처음 등장, key 초과 처음 등장package ex;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { public static void mai.. 2025. 11. 20. 백준 2630 (색종이 만들기) 재귀 checkSame 함수 없는 버전package ex;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { static int[][] paper; static int white = 0; static int blue = 0; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); i.. 2025. 10. 30. 백준 1927 (최소 힙) PriorityQueue(우선 순위 큐) package ex;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;/** * 백준 1927번 - 최소 힙 * * PriorityQueue란? * - 우선순위 큐: 일반 큐와 달리 우선순위가 높은 요소가 먼저 나옴 * - 기본적으로 최소 힙(Min Heap)으로 동작 → 가장 작은 값이 항상 맨 앞 * - 내부적으로 완전 이진 트리(Complete Binary Tree) 구조로 구현 * * 주요 메서드: * - add(e) / offer(e): 요소 추가, 시간복잡도 O(log N) * - poll(): 최소값 제거 후 반환, 시간복잡도 O(log N), 비어.. 2025. 10. 25. Restful API란? 왜 사용하지? Restful API가 뭘까?REST (Representational State Transfer)는 웹의 기본 구조와 원리를 그대로 따르는 아키텍쳐 스타일이다.RESTful API는 이 REST의 원칙을 잘 지켜서 설계된 API라는 것.핵심 개념은?자원 (Resource)서버가 클라이언트에게 제공하는 모든 정보 (사용자, 게시글, 상품 등)를 자원으로 간주.이 자원은 URI (Uniform Resource Identifier)를 통해 식별된다.REST의 4가지 주요 원칙1. 자원 식별 (Resource Identification) : URI를 사용하여 자원 식별 (예 : /users, /posts/100)2. 메소드 사용 : 자원에 대한 행위(CRUD)는 HTTP 메소드(GET,POST,PUT,DELET.. 2025. 10. 24. 백준 1260 (DFS와 BFS) package ex;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class Main { static ArrayList[] graph; static boolean[] visited; static StringBuilder sb = new StringBuilder(); public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); .. 2025. 10. 20. 이전 1 2 3 4 ··· 12 다음