| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- DFS
- c언어
- 개발일지
- Git
- 프로그래머스
- 라이브커머스
- 유니온 파인드
- 인사관리사이트
- 기업분석
- Union Find
- Spring Security
- delphi
- jwt
- 힙
- 알고리즘
- 기술면접
- 팀프로젝트
- 델파이
- 코딩테스트
- SQLCA
- 이커머스
- 레거시
- snprintf
- 커머스기사
- Pro*C
- 금융개발
- 온라인쇼핑
- proc
- 오라클
- 정수오버플로우
- Today
- Total
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- DFS
- c언어
- 개발일지
- Git
- 프로그래머스
- 라이브커머스
- 유니온 파인드
- 인사관리사이트
- 기업분석
- Union Find
- Spring Security
- delphi
- jwt
- 힙
- 알고리즘
- 기술면접
- 팀프로젝트
- 델파이
- 코딩테스트
- SQLCA
- 이커머스
- 레거시
- snprintf
- 커머스기사
- Pro*C
- 금융개발
- 온라인쇼핑
- proc
- 오라클
- 정수오버플로우
- Today
- Total
목록전체 글 (76)
JumpUp
DP는 코딩 테스트에서 난이도 편차가 큰 대표 유형이다. 개념 자체는 단순한데 점화식을 세우는 데서 막히기 쉬워서, 접근 순서와 자주 나오는 패턴을 정리해 두었다.1. DP란?큰 문제를 작은 부분 문제로 나누고, 같은 부분 문제를 여러 번 풀지 않도록 결과를 저장해서 재활용하는 방법이다. 아래 두 조건이 맞을 때 적용할 수 있다.겹치는 부분 문제: 같은 작은 문제가 반복해서 등장한다.최적 부분 구조: 전체 문제의 최적해가 부분 문제의 최적해로 구성된다.2. 메모이제이션 vs 타뷸레이션메모이제이션(Top-Down): 재귀로 풀면서 이미 계산한 값은 배열에 저장해 두고 재사용한다. 필요한 부분만 계산한다.타뷸레이션(Bottom-Up): 작은 문제부터 반복문으로 표를 채워 나간다. 재귀 깊이 문제가 없고 보통..
스프링 프로젝트에서 데이터 접근 기술로 거의 기본처럼 쓰이는 JPA의 핵심 개념을 면접 질문 기준으로 정리했다.1. ORM과 JPAORM(Object-Relational Mapping): 객체와 관계형 데이터베이스의 테이블을 매핑해, SQL 대신 객체 중심으로 데이터를 다루게 해 주는 기술JPA(Java Persistence API): 자바 진영의 ORM 표준 인터페이스Hibernate: JPA의 대표적인 구현체. Spring Data JPA는 JPA 위에서 리포지토리 코드를 줄여 주는 추상화 계층이다.2. 영속성 컨텍스트(Persistence Context)엔티티를 영구 저장하는 환경으로, EntityManager를 통해 엔티티를 저장·조회하면 이 컨텍스트가 관리한다. 트랜잭션 단위로 생명주기를 가지는..
금융권이나 대형 시스템의 배치·서버 프로그램을 보면 C 소스 안에 SQL이 그대로 들어 있는 코드를 만나게 된다. 오라클 환경에서 이런 코드를 작성하는 도구가 Pro*C다. 개념과 컴파일 흐름, 꼭 알아야 할 문법을 정리했다.1. Pro*C란?Pro*C는 C 언어 소스 안에 EXEC SQL로 시작하는 SQL 문장을 직접 써넣을 수 있게 해 주는 오라클의 프리컴파일러(Precompiler)다. 이렇게 SQL을 다른 언어 안에 포함시키는 방식을 임베디드 SQL(Embedded SQL)이라고 한다.C 컴파일러는 EXEC SQL을 이해하지 못한다. 그래서 먼저 Pro*C 프리컴파일러(proc)가 이 문장들을 오라클 라이브러리 호출 코드로 바꿔 순수한 C 파일을 만들어 주고, 그 C 파일을 일반 C 컴파일러로 컴..
그래프 탐색 문제에서 가장 자주 쓰는 DFS와 BFS를 정리해봤다. 둘 다 시간복잡도는 같지만 탐색 순서와 잘 맞는 문제 유형이 다르다.1. DFS와 BFS란?DFS(깊이 우선 탐색): 한 방향으로 갈 수 있는 끝까지 깊이 들어갔다가, 더 갈 곳이 없으면 되돌아와서 다른 방향을 탐색한다. 스택(또는 재귀 호출)을 사용한다.BFS(너비 우선 탐색): 시작 정점에서 가까운 정점부터 차례대로, 같은 거리의 정점들을 모두 방문한 뒤 다음 거리로 넘어간다. 큐를 사용한다.2. 한눈에 비교자료구조: DFS는 스택/재귀, BFS는 큐탐색 방식: DFS는 깊이 우선, BFS는 가까운 정점부터(레벨 순서)시간복잡도: 둘 다 인접 리스트 기준 O(V + E), 인접 행렬 기준 O(V^2)공간복잡도: DFS는 재귀 깊이(최..
스프링 백엔드 면접에서 거의 빠지지 않고 나오는 질문들을 정리했다. 암기보다는 "왜 필요한가"를 같이 이해해 두는 쪽이 꼬리 질문에 대응하기 좋다.1. 스프링 프레임워크란?자바 엔터프라이즈 애플리케이션 개발을 편하게 해 주는 경량 프레임워크다. 객체의 생성과 의존 관계를 컨테이너가 관리해 주고(IoC/DI), 트랜잭션·보안·웹 MVC 같은 공통 기능을 일관된 방식으로 제공한다.2. IoC와 DIIoC(제어의 역전): 객체 생성과 생명주기 관리의 제어권이 개발자 코드가 아니라 스프링 컨테이너에 넘어가는 것DI(의존성 주입): 객체가 사용할 다른 객체를 직접 new 하지 않고 외부에서 주입받는 것. IoC를 구현하는 방법 중 하나다.주입 방식: 생성자 주입, 세터 주입, 필드 주입이 있고, 불변성 보장과 테..
운영체제 기술면접에서 자주 나오는 질문들을 정리해봤다. 1. 프로세스와 스레드의 차이는?프로세스는 실행 중인 프로그램이다. 운영체제로부터 독립된 메모리 공간(코드, 데이터, 힙, 스택)을 할당받아 실행된다. 스레드는 프로세스 안에서 실제 작업을 수행하는 실행 단위로, 한 프로세스 안의 스레드들은 코드, 데이터, 힙 영역을 공유하고 스택과 레지스터만 각자 가진다.프로세스: 서로 독립된 메모리 공간을 가진다. 다른 프로세스와 통신하려면 IPC(파이프, 소켓, 공유 메모리 등)가 필요하다.스레드: 같은 프로세스 안에서 메모리를 공유해서 통신이 쉽고 생성 비용이 작다. 대신 공유 자원에 동시에 접근하면 동기화 문제가 생긴다.2. 멀티 프로세스와 멀티 스레드의 장단점은?멀티 프로세스는 프로세스 하나가 비정상 종료..
