목록2024/07 (3)
행복을 담는 블로그
시간 복잡도 (Time Complexity)?: 프로그램을 실행하는데 실제로 시간이 얼마나 걸리느냐?를 나타내는 척도를 의미한다.시간을 측정하는 2가지 방법실제 소요되는 시간을 측정 : 컴퓨터의 프로그램이 시작하는 시간 ~ 끝나는 시간까지 차이 비교❗️문제점 : 컴퓨터 CPU의 성능에 따라 실제 실행되는 시간이 달라지기 때문에, 같은 코드로 짠 프로그램이라도 실행 시간이 달라질 수 있다.실행되는 명령문의 개수를 계산 : 프로그램 내에서 실행되는 명령문의 수로 시간이 걸리는 정도를 알아본다.❗️문제점 : 프로그램이 복잡해질수록 명령어가 많아지므로, 현실적으로 확인하기 어렵다.💡 시간 복잡도란?"입력 크기에 따라 어떠한 알고리즘이 실행되는 데 걸리는 시간"주로 로직의 반복 횟수를 중점으로 처리되며, 보통..
백준 문제를 풀다가 어려운 문제가 전혀 아닌데 왜 정답이 아니지 라고 생각하다 데이터 타입 크기의 중요성에 대해서 알게 되었다.문제를 보면 N 과 M을 각각 정수로 값을 입력 받고, 이후에 그 차이를 구하라는 문제였다. 우선 N과 M을 Scanner로 정수를 입력 받는다.Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int M = sc.nextInt();이후 Math.abs() 메서드를 활용하여 절대값을 구해서 그대로 출력만 하면 되는데, 계속 정답이 아니라고 떴다. import java.util.Scanner;public class Main { public static void main(String[] args) { Sca..
백준 / SWEA 알고리즘 문제 풀 때, 입력값 받는 방법프로그래머스로 문제를 풀 때와 다르게, 백준이나 SWEA를 통해 알고리즘 문제를 풀 경우, input 값을 직접 입력하고 받아와서 문제를 풀어야 하는 형태로 이루어져 있다.java를 처음 배우는 입장에서 처음 알고리즘 문제를 풀고자 했을 때 이 부분부터 굉장히 막막해서 진도가 안 나갔다는...Scanner를 먼저 import를 해와한다.Scanner sc = new Scanner(System.in);그 다음 값을 입력 받고 싶을 때, 다음과 같이 Scanner로 부터 변수 형태에 맞게 값을 입력할 수 있다. 1. 정수를 입력 받을 때는 nextInt() 를 사용한다.int N = sc.nextInt(); 2. 문자열 입력next() v.s. n..