본문 바로가기
728x90
반응형

분류 전체보기148

99클럽 코테 스터디 24일차 TIL DP 예제 DP; Dynamic Programming 동적 계획법 예제피보나치 수를 구하는 함수에 DP 알고리즘 적용하기피보나치수열 알고리즘은 부분 문제의 답으로부터 본 문제의 답을 얻을 수 있는 최적 부분 구조로 이루어져 있음DP 알고리즘을 적용하기 좋은 예제 중 하나임  1. recursive 방식 함수의 호출을 이용한 재귀적 방법재귀적 구조는 엄청난 중복 호출이 발생할 수 있으므로 내부에 시스템 호출 스택을 사용하는 overhead가 발생할 수 있음 public int fib_recursive(int n) { if (n  2. iterative 방식 (memoization 개념 활용)반복문을 이용한 반복적 방법Memoization을 반복적 구조에 사용하여 DP 알고리즘을 구현하는 것이 위의 재귀적 구조에.. 2024. 6. 12.
99클럽 코테 스터디 23일차 TIL DP DP; Dynamic Programming 동적 계획법크기가 크거나 복잡한 문제를 효율적으로 풀기 위해 작거나 간단한 여러 개의 문제로 나눠서 푸는 방법그리디 알고리즘과 같이 최적화 문제를 해결하는 알고리즘입력 크기가 작은 부분 문제들을 해결한 후에 그 해들을 이용하여 보다 큰 크기의 부분 문제들을 해결하고, 최종적으로 원래 주어진 입력의 문제를 해결하는 알고리즘 설계 기법프로그램 성능의 향상을 기대할 수 있음 DP 알고리즘 구현 방식1. recursive 방식함수의 호출을 이용한 재귀적 방법재귀적 구조는 엄청난 중복 호출이 발생할 수 있으므로 내부에 시스템 호출 스택을 사용하는 overhead가 발생할 수 있음2. iterative 방식반복문을 이용한 반복적 방법Memoization을 반복적 구조에 사.. 2024. 6. 11.
99클럽 코테 스터디 22일차 TIL JAVA 데이터 타입 JAVA의 데이터 타입Primitive data type (기본형)논리형boolean (참/거짓)숫자형 - 정수형byte(1): -128 ~ 127short(2): -32,768 ~ 32,767int(4): -2^31 ~ 2^31-1long(8): -2^63 ~ 2^63-1char(2): 유니코드 문자로, 하나의 문자를 저장숫자형 - 실수형float(4)double(8)Reference data type (참조형) 클래스 (Class)Java에서 정의한 사용자 정의 타입으로, 객체를 생성하는 틀 역할을 함예: String, ArrayList, HashMap 등배열 (Array):같은 타입의 값들을 모아 놓은 자료구조예: int[], String[] 등인터페이스 (Interface)클래스가 구현해야 하는 .. 2024. 6. 10.
99클럽 코테 스터디 21일차 TIL OOP 5원칙 OOP의 5가지 설계 원칙단일 책임 원칙 (SRP; Single Responsiblity Principle)모든 클래스는 단 하나의 책임만 가져야 한다.클래스는 하나의 기능만 담당하고 책임져야 한다.개방-폐쇄 원칙(OCP; Open Closed Principle)확장에는 열려있고 수정에는 닫혀있다.기존 코드를 변경하지 않고(closed), 기능을 추가(open)할 수 있어야 한다.리스코프 치환 원칙 (LSP; Liskov Substitution Principle)상위 클래스를 하위 클래스로 대체할 수 있다.인터페이스 분리 원칙 (ISP; Interface Segregation Principle)하나의 범용 인터페이스보다 여러 개의 구체화된 인터페이스가 낫다.자신이 사용하지 않는 메서드에 의존하지 않아야 .. 2024. 6. 9.
728x90
반응형