본문 바로가기

Baekjoon6

[Java/Algorithm] 백준 10818번: 최소, 최대 구하기 (배열o, 배열x) 드디어 배열 메소드 사용하는 최대,최소 문제 시작 sort()를 쓰면 금방이지만, 메모리를 잡아먹는 단점이 있기 때문에 배열 없이도 풀어보았다. 1. 배열o import java.io.*; import java.util.Arrays; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; int N = Integer.parseInt(br.readLine()); int[] arr = new in.. 2023. 11. 12.
[Java/Algorithm] 백준 10871번: X보다 작은 수 for문과 if문으로 간단히 풀 수 있는 문제이다. 배열 카테고리라서 배열을 사용하도록 유도된 것 같지만 배열을 사용할 수도 있고 사용하지 않을 수도 있다. 아래에 성능 비교도 있다. 1. 배열 사용 + StringBuilder import java.io.*; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); StringB.. 2023. 11. 12.
[Java/Algorithm] 백준-10951 EOF 사용하기 + 성능비교 EOF 란? End of File, 더이상 데이터가 존재하지 않을 경우 반복문을 종료하는 것. ctrl + Z(윈도우) ctrl + D(리눅스) 로 종료 3가지 방법이 있다. 1. BufferedReader + StringTokenizer 2. BufferedReader + String.charAt() 3 .Scanner 1. BufferedReader + StringTokenizer import java.io.*; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputS.. 2023. 11. 11.
[Java/Algorithm] Java11에 추가된 String 메소드 repeat()로 코드 단축하기 여느때 처럼 별찍기 문제를 다중 for문으로 해결하여 제출을 했는데, 상위권 제출자들의 소스코드를 보니 repeat()메소드를 사용하여 한 번의 for문으로 해결하고 있었다! Repeat Java11에 추가된 String 메소드 repeat String 문자열을 주어진 파라미터의 횟수만큼 반복한다. 파라미터를 0으로 지정하면 빈 문자열을 반환한다. 파라미터를 음수로 지정하면 IllegalArgumentExceptionthrow 에러를 반환한다. 파라미터를 1로 지정하면 문자열을 그대로 반환한다. 내부적으로 Arrays.fill()과 System.arraycopy()메소드를 호출하여 새 문자열을 만든다. https://www.javastring.net/java/string/java-string-repeat.. 2023. 11. 10.
[Java/Algorithm] BufferedWriter vs. StringBuilder 속도차이! 위에서 부터 순서대로 BufferedWriter + StringTokenizer + StringBuilder + while BufferedWriter + StringTokenizer + StringBuilder + for BufferedWriter + StringTokenizer + while BufferedWriter + StringTokenizer + for 1. BufferedWriter + StringTokenizer + StringBuilder + while import java.io.*; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { Bu.. 2023. 11. 10.
[Java/Algorithm] BufferedReader vs. Scanner 분명한 속도 차이! [Scanner] 직관적이고 내장 메소드가 많아서 활용성이 높다. 키보드로부터 입력받은 즉시 메모리 전송! 띄어쓰기와 개행문자(엔터)를 기준으로 입력 값 인식 사용법 객체생성 - 입력값 받기 - 리소스 닫기 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // Scanner 객체 생성 int n = sc.nextInt(); // 정수형 입력값 받을 땐 nextInt() System.out.println(n); sc.close(); // 리소스 닫기 } } [BufferedReaer] 버퍼를 거쳐서 메모리 전송! 키보드의 입력을 바구니.. 2023. 11. 9.