본문 바로가기

Algorithm84

자료 구조 - 레드 블랙 트리 레드 블랙 트리는 불균형하게 성장한 이진 탐색 트리의 단점을 보완한 트리 구조입니다. 레드 블랙 트리가 이진 탐색 트리와 다른 점은 노드를 빨간색, 검은색으로 표시한다는 것입니다. 레드 블랙 트리는 다음과 같은 규칙을 따릅니다. 모든 노드는 빨간색 아니면 검은색이다. 루트 노드는 검은색이다. NIL(잎) 노드는 검은색이다. 빨간 노드의 자식들은 모두 검은색이다. 하지만 검은색 노드의 자식이 빨간색일 필요는 없다. 루트 노드에서 모든 NIL(잎) 노드 사이에 있는 검은색 노드의 수는 모두 동일하다. NIL 노드는 아무 데이터도 갖고 있지 않은 색깔만 검은색인 노드입니다. 굳이 NIL 노드를 사용하는 이유는 구현을 쉽게 하기 위해서입니다. NIL 노드를 양쪽 자식으로 연결해서 NIL 노드가 잎 노드가 되면 .. 2021. 1. 7.
[백준 알고리즘][자바] 1330번 : 두 수 비교하기 https://www.acmicpc.net/problem/1330 1330번: 두 수 비교하기 두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오. www.acmicpc.net 문제 해설 if문을 이용한 두 수 비교하기 문제입니다. 해결 방법 제한사항에 대한 코드를 작성해주는 것이 포인트! import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int A; int B; while(true) { A = scan.nextInt(); B = scan.nextInt(); if(A = -10000 && B = -10000).. 2021. 1. 6.
[백준 알고리즘][자바] 2588번 : 곱셈 https://www.acmicpc.net/problem/2588 2588번: 곱셈 첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. www.acmicpc.net 문제 해설 세 자릿수끼리의 곱셈 과정을 프로그램으로 작성하는 문제입니다. 해결 방법 스캐너를 통해 두 수를 입력해준 뒤, 나머지 연산과 뺄셈을 이용해서 자릿수를 구하고 계산하였습니다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int A, B; A = scan.nextInt(); B = scan.nextInt(); Syst.. 2021. 1. 5.
[백준 알고리즘][자바] 1000번 : A+B https://www.acmicpc.net/problem/1000 1000번: A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 해결 방법 Scanner를 통하여 두 수를 입력하고, println()메서드로 출력합니다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int A, B; A = scan.nextInt(); B = scan.nextInt(); System.out.println(A+B); } } 2021. 1. 5.
반응형