본문 바로가기

전체 글

(31)
[백준] 2178번 미로 탐색 - BFS / 너비 탐색 알고리즘 / 클래스 문제 My Code import java.io.*; import java.util.LinkedList; import java.util.Queue; class ArrGraph{ private int[][] arrGrapgh; //인접 행렬 선언 boolean[][] visit; // 방문 배열 선언 private int n, m; //행과 열 선언 //상하좌우 탐색 배열 선언 및 초기화 private int[] dx = {0, 1, 0, -1}; private int[] dy = {1, 0, -1, 0}; //생성자 public ArrGraph(int n, int m) { this.arrGrapgh = new int[n][m]; this.visit = new boolean[n][m]; this.n = n;..
[Java] BFS 구현하기 - 재귀 함수&Queue이용 / 인접 리스트 ex) Code import java.io.*; import java.util.LinkedList; import java.util.Queue; public class Main { static LinkedList[] adj; static boolean[] visit; static Queue queue; public static void main(String[] args) throws IOException{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); //정점과 간선 선언 및 저장 String str = bf.readLine(); int n = Integer.parseInt(str.split(" ")[0]); int m ..
[백준] 11724번 연결 요소의 개수 - DFS방식 / 재귀 함수 이용/ 무방향 그래프 문제 My Code import java.io.*; import java.util.LinkedList; import java.util.Stack; public class Main { static LinkedList[] linkedList; static Stack stack; static int[] result; static int index = 0; static boolean[] tf; public static void main(String[] args) throws IOException{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int[] input = new int[2]; stack = new Stack(); ..
[Java] DFS 구현하기 - 재귀 함수 이용 / 인접 리스트 / 배열 ex) Code import java.io.*; import java.util.LinkedList; public class Main { static LinkedList[] linkedList; static boolean[] visit; public static void main(String[] args) throws IOException{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); //정점과 간선 입력&저장 String str = bf.readLine(); int n = Integer.parseInt(str.split(" ")[0]); int m = Integer.parseInt(str.split(" ")[1]); ..
[백준] 1517번 버블 소트 - 병합 정렬 / 버블 정렬 문제 My Code import java.io.*; import java.util.StringTokenizer; public class Main { static int[] testArray; static int count; public static void main(String[] args) throws IOException{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(bf.readLine()); int[] array = new int[N]; testArray = new int[N]; count = 0; StringTokenizer st = new StringTokeniz..
[백준] 11004번 K번째 수 - 퀵정렬 / 오름차순 정렬 문제 My Code import java.io.*; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int N; int findindex; int [] input = new int[2]; int start, end, pivot; StringTokenizer st = new StringTokenizer(bf.readLine()); for (int i = 0; i pivot && end < pivot) { numArray[i..
[백준] 11399번 ATM - 삽입정렬 / 오름차순 정렬 / 계산 문제 로직 사람의 수 입력받기 필요한 시간 배열 선언 및 크기 지정 반복문 - 필요한 시간 입력 받기 & 배열에 저장 while 반복문 - 삽입 정렬한 부분의 젤 큰 값(오름차순 정렬되어있으므로 가장 인덱스가 큰 값)이 선택한 데이터보다 클 때 - 1. for 반복문 -> 삽입 정렬한 부분에서 선택한 데이터이 삽입될 인덱스 찾음(point) -> 반복문 종료 - 선택한 데이터값 저장(select) - 2. for 반복문 - 선택한 데이터가 삽입할 부분의 앞의 값들을 앞으로 이동 - 선택한 데이터 삽입 - index값 증가 3. for 반복문 - 합 계산 -> 합 출력 My Code import java.io.*; import java.util.StringTokenizer; public class Main..
[백준] 1427번 소트인사이드 - 내림차순 정렬 / 선택정렬 문제 로직 정렬하려는 수 입력 받기 정렬하려는 수와 같은 길이의 문자열 선언 배열 선언 double형 변수 선언 최댓값 인덱스 변수 선언 및 초기화 1. 반복문 - 정렬하고자하는 변수의 자릿수별로 doulbe형 변수에 저장 (Math.pow()는 double형으로 반환함) - 배열에 저장한 값을 정수형으로 변환 후 차례대로 저장 2. 반복문 - 최댓값 초기화 - 3. 반복문 - 배열에서 최댓값 찾아서 저장 - if문 -> 최댓값과 배열의 값이 같을 때 -> 그때의 인덱스 값 저장 - 최댓값과 배열의 값 스왑하기 4. 반복문 - 내림차순 정렬된 배열의 값 순서대로 출력 My Code import java.io.*; public class Main { public static void main(String[..