📌 Study Tip
-
Python
[Python/level 0] 특정 문자 제거하기 - 120826, replace()
문제 설명문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요. replace()The replace() method replaces a specified phrase with another specified phrase.지정된 구문을 다른 구문으로 대체합니다.string.replace(oldvalue, newvalue, count)ParameterDescriptionoldvalueRequired. The string to search fornewvalueRequired. The string to replace the old value withcountOptional. A number..
-
정보처리기사
[정보처리기사 실기] 프로그래밍 언어 활용 (C언어, JAVA, Python)
✏️ C언어, JAVA기본 데이터 타입 및 크기C언어JAVA자료형예약어(크기, byte)예약어(크기, byte)정수형short(2)int(4)long(4)unsignedbyte(1)short(2)int(4)long(8)실수형float(4)double(8)long doublefloat(4)double(8)문자형char(1)unsigned charchar(2)형 없음voidvoid논리형-boolean(1) C언어 연산자 우선순위비트연산자: 정수형 변수만을 대상으로 합니다. JAVA 연산자 우선순위 JAVA의 다형성: 오버로딩(Overloading), 오버라이딩(Overriding), 업캐스팅(UpCasting)오버로딩- 같은 클래스 내에서 같은 메소드명 중복 정의(매개변수의 자료형, 개수, 순서 상이)- 메..
-
SQL 튜닝
[SQL튜닝/옵티마이저 원리] 쿼리 변환 2 (조건절 Pushing, 조건절 이행, 불필요한 조인 제거, OR 조건을 Union으로 변환, 기타)
🖥️ 들어가며📌 쿼리 변환 종합- 서브쿼리 Unnesting (+ push_subq)- 뷰 Merging (불가한 경우: 집CR 함수는 불가, Group By는 가능)- 조건절 Pushing (조인절 Pushdown, 조인절 Pullup, 조인조건 Pushdown)- 조건절 이행- 불필요한 조인 제거- OR 조건을 Union으로 변환 (OR-Expansion)- 기타 ✏️ 1. 조건절 Pushing옵티마이저의 뷰 처리1차적으로 뷰 Merging을 수행하지만뷰 Merging 실패 시 옵티마이저는 조건절(Predicate) Pushing을 시도합니다.조건절 Pushing뷰를 참조하는 메인쿼리 블록의 조건절을 → 뷰 쿼리 블록 안으로 Pushing하는 기능입니다.조건절 Pushing 종류1. 조건절 Pus..
-
SQL 튜닝
[SQL 튜닝/인덱스와 조인] 다양한 인덱스 스캔 방식 (Index Range Scan, Index Full Scan, Index Unique Scan, Index Skip Scan, Index Fast Full Scan, Index Range Scan Descending, In-List Iterator, Index Combine)
🖥️ 들어가며📌 인덱스 스캔 방식: 여러가지가 있지만, Index Unique Scan을 제외하면 Index Range Scan의 성능이 가장 좋습니다.✏️ 1. Index Range Scan항상 빠른 속도를 보장하지는 않습니다.(인덱스 스캔의 손익분기점: Index Rage Scan에 의한 테이블 액세스가 Full Table Scan보다 느려지는 지점)SQL 튜닝: Key Point인덱스 스캔하는 범위를 얼마나 줄일 수 있는가?테이블로 액세스하는 횟수를 얼마나 줄일 수 있는가? (즉, R.A를 얼마나 줄일 수 있는가)힌트: Range Scan을 유도하는 인트는 없으며, Index 힌트*를 활용합니다. 👉🏻 *힌트힌트는 사용자의 명령어로 인식됩니다.따라서 힌트가 적용되지 않는 경우그 힌트가 논리적..
-
개인 개발일지
[FE/Next.js/Storybook] 25.08.04 - 스토리북 적용 및 PostCSS 오류 해결
✏️ 25.08.04 - 주요 TaskFE Storybook 도입Storybook 실행 중 PostCSS 관련 오류 해결package.json 내 "type":"module" 및 Tailwind CSS 📌 프론트엔드✅ FE Storybook 도입도입 목적UI 컴포넌트 문서화와 개발 편의성 향상컴포넌트별 독립적인 테스트 및 시각화 가능(+ 팀 프로젝트였다면 디자이너/기획자/개발자 간 커뮤니케이션 효율화)개발 중 Storybook 도입한 이유기존 UI 컴포넌트 테스트가 번거로웠음Storyboo은 각 컴포넌트를 따로 렌더링/테스트/프리뷰할 수 있기에 생산성 향상 기대실제 서비스 반영 전, 각 컴포넌트의 상태와 조합을 테스트하기 용이사용자 시나리오별 다양한 UI 케이스를 시각적으로 확인 가능이점컴포넌트 단위 ..
-
문법
[Java/문법] ArrayLIst 주요 메서드 정리 (add, get, contains, indexOf, lastIndexOf, set, remove, clear, size, isEmpty, toArray, forEach, sort(Comparator.naturalorder()/.reverseOrder()))
✏️ 추가: add메서드설명add(E e)리스트 끝에 요소 추가add(int index, E e)특정 인덱스에 요소 삽입ArrayList list = new ArrayList();list.add("Apple"); // ["Apple"]list.add("Banana"); // ["Apple", "Banana"]list.add(1, "Cherry"); // ["Apple", "Cherry", "Banana"] ✏️ 조회: get, contains메서드설명get(int index)특정 인덱스의 요소 가져오기contains(Object o)리스트에 특정 요소가 있는지 확인 (반환: true / false)indexOf(Object o)특정 요소의 인덱스 반환 (없으면 -1)lastIndexOf(Object..
-
SQL 튜닝
[SQL튜닝/아키텍처 기반 튜닝 원리] SQL 파싱 부하 (SQL 처리과정, 캐싱된 SQL 공유, Bind 변수 사용, Static/Dynamic SQL, Application Cursor Caching)
🖥️ 들어가며📌 SQL 파싱 부하의 핵심: 파싱 최소화, 쿼리 최적화, 인덱스 관리를 통해 시스템 자원 효율성을 극대화하는 것입니다.(Hard Parsing, Soft Parsing, Bind 변수, Application Cursor Caching)✏️ 1. SQL 처리과정처리과정 1: SQL 파싱(Parsing)(1) Syntax 검사: SQL 문장에 문법적 오류가 없는지(2) Semantic 검사: 의미상 오류가 없는지(3) SQL 실행 계획이 Library Cache(SQL Server: Procedure Cache)에 존재하는지, 존재 여부 점검=> ⭐⭐⭐ 캐싱 O: Soft Parsing, 캐싱 X: Hard Parsing파싱 종류설명소프트 파싱 (Soft Parsing)SQL과 실행계획을 ..
-
문법
[Java] 핵심 기본편 - 자료형, 변수, 형 변환, 연산자
1. 자료형과 변수자료형자료형: 자료의 형태(Data Type) (기본 자료형 vs 참조 자료형)기본: 실제 데이터 값을 저장int, long, float, double, boolean, char ...자료형데이터크기(byte)표현 범위int정수4-2,147,483,648 ~ 2,147,483,647long정수8-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807float실수4(정밀도 기준) 6~7자리double실수8(정밀도 기준) 15자리boolean참/거짓1True or Falsechar문자2하나의 문자 참조: 데이터가 저장된 메모리 주소 값을 저장클래스, 인터페이스, 배열, 열거형 ... (String) 변수변수: 자료를 저장하기 위한 공간자료형 변수명 ..
-
정보처리기사
프로세스 스케줄링 - FCFS, SJF, HRN, SRT, RR
비선점FCFS(First come First served, 서비스를 받으러 도착한 순서대로)1. 다음은 CPU에 서비스를 받으려고 도착한 순서대로 프로세스와 그 서비스 시간을 나타낸다. FCFS CPU 스케줄링에 의해서 프로세스를 처리한다고 했을 때, 프로세스 평균 대기 시간은 얼마인가?프로세스버스트 시간(초)대기시간P1240 (바로 시작)P2324 (P1의 소요시간)P3327 (P1 + P2 소요시간 )24 + 27 = 5151 / 3 = 17 2. 다음과 같은 3개의 작업에 대하여 FCFS 알고리즘을 사용할 때, 임의의 작업 순서로 얻을 수 있는 최대 평균 반환 시간을 T, 최소 평균 반환 시간을 t라고 가정했을 때 T-t 값은?프로세스실행시간P19P23P312최대평균반환시간대기시간반환시간120 (바..
-
코딩테스트
[백준/Silver II] 부분수열의 합 - 1182
문제 링크: https://www.acmicpc.net/problem/1182 시간: 112ms메모리: 14216KBDFS공집합 제외: if (S == 0) count--;package BOJ;import java.util.*;import java.io.*;public class B1182 { static int N, S, count; static int[] arr; public static void dfs(int depth, int sum) { if (depth == N) { if (sum == S) count++; return; } dfs(depth+1, sum+arr[depth]); dfs(de..