알고리즘 (6) 썸네일형 리스트형 [공부의 흔적]_HashSet / TreeSet ▶ HashSet Set인터페이스에서 지원하는 구현 클래스. 그래서 Set 특징을 그대로 상속받음.Set은 중복 허용하지 않고, 하나의 null 값만 저장 가능. 또한 순서 없이 Key로만 데이터를 저장함. Set의 가장 큰 장점은 중복을 자동으로 제거해 줌. Set은 비선형 구조이기 때문에 순서가 없고, 인덱스도 당연히 존재하지 않음.따라서 값을 추가하거나 삭제할 때는 그 값이 Set 내부에 있는지 검색 한 뒤, 추가나 삭제를 해야 하므로 속도가 List 구조에 비해 느림. Set 인터페이스를 구현하는 클래스는 HashSet, TreeSet 등이 있음. HashSet은 중복 제거해야 할 때, 값이 존재하는지 빠르게 확인해야 할 때(contains), 정렬이 피요 없는 데이터 집합일 때 사용하면 좋음. .. [공부의흔적]_Buffer 자바에서 입력받을 때 Scanner 클래스로 입력을 받으며 사용했는데, 속도 측면에서 BufferedReader를 사용하면 훨씬 더 시간이 줄어듦. BufferedReader : Scanner와 유사BufferedWriter : System.out.println()과 유사 버퍼를 사용하지 않는 입력은 키보드의 키를 누르는 즉시 바로 프로그램에 전달.버퍼를 사용하는 입력은 키보드의 입력이 있을 때마다 한 문자씩 버퍼로 전송. → 버퍼 가득 차거나 혹은 개행 문자가 나타나면 버퍼의 내용을 한 번에 프로그램에 전달. 버퍼를 거쳐 출력되는 것보다, 키보드 입력 받아 즉시 출력하는 것이 더 빠를 수 있다고 생각할 수 있음.하드디스크는 속도가 느림. 그리고 외부장치(키보드, 마우스, 모니터 ...)와 데이터 입출력.. [백준 알고리즘]_반복문 1. 2739번_구구단 ▶ 문제N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하시오, 출력 형식에 맞춰서 출력하면 된다. ▶ 입력첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 9보다 작거나 같다. ▶ 출력출력형식과 같게 N*1부터 N*9까지 출력한다. ▶ 예제입력12 ▶ 예제출력12 * 1 = 22 * 2 = 42 * 3 = 62 * 4 = 82 * 5 = 102 * 6 = 122 * 7 = 142 * 8 = 162 * 9 = 18 ▶ 풀이import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); .. [공부의 흔적]_자바 기본 입출력_System.in.read(); ● 자바에서는 기본적으로 ASCII 코드 값이 입력됨. - 대문자 'A'를 입력했을 때 아스키코드 값인 65를 출력하고, 소문자 'a'를 입력했을 때 아스키코드 값인 97을 출력. ● System.in.read();- Scanner, BufferedReader 객체를 사용하지 않고 입력값을 받을 수 있음.- 버퍼(InputStream)를 사용하기 때문에 효율적이고, IOException의 throw를 필수적으로 해주어야 함.- 문자를 하나씩만 가져올 수 있고, 아스키 코드로 변환해 가져옴.import java.io.IOException;public class Main { public static void main(String[] args) throws IOException { char .. [백준 알고리즘]_조건문 1) 1330문제 : 두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오.입력 : 첫째 출에 A와 B가 주어진다. A와 B는 공백 한 칸으로 구분되어져 있다.출력 :첫째 줄에 다음 세 가지 중 하나를 출력한다. - A가 B보다 큰 경우에는 '>'를 출력한다. - A가 B보다 작은 경우에는 ' - A와 B가 같은 경우네는 '=='를 출력한다.제한 : -10,000 ≤ A, B ≤ 10,000예제입력1 : 1 2예제출력1 : 예제입력2 : 10 2예제출력2 : > import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); .. [백준 알고리즘]_입출력과 사칙연산 1) 2557문제 : Hello World!를 출력하시오.입력 : 없음출력 : Hello World!를 출력하시오.예제입력 : 없음예제출력 : Hello World! 제출주의) Class명은 Main으로 해야한다.public class Main { public static void main(String[] args) { System.out.println("Hello World!"); }} 2) 1000문제 : 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.입력 : 첫째 줄에 A와 B가 주어진다. (0출력 : 첫째 줄에 A+B를 출력한다.예제입력 : 1 2예제출력 : 3 제출주의) import도 같이 입력해야 한다. import java.util.Scanner;public c.. 이전 1 다음