일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 정처기
- Bean Validation
- 네트워크
- 메서드
- OS
- 자바의 정석
- 객체지향프로그래밍
- ModelAttribute
- 검증
- 자료구조
- 브루트 포스
- 웹개발
- JPA
- 코테
- programmers
- 백준
- 운영체제
- 스프링
- 프로그래머스
- Java
- 쿼리dsl
- 알고리즘
- 스파르타코딩
- 반복문
- 면접
- 스프링MVC
- 자바
- 코딩테스트
- 스프링 MVC
- db
- Today
- Total
목록자료구조 (10)
개발일지

목차 그래프란? 그래프는 정점(node 또는 vertex)과 간선(edge)로 이루어진 자료구조이다. 그래프의 활용 그래프는 연결되어 있는 객체 간의 관계를 표현할 수 있는 자료구조이다. 그래서 그래프는 실생활에서 지하철 노선도 최단 경로, 도로, 선수 과목 등에 쓰이고 있다. 그래프 관련용어 간선(Edge) : 정점(노드)를 연결하는 선. 링크(Link) 또는 브랜치(branch) 로도 불린다. 인접 정점(adjacent vertex): 간선에 의해 직접 연결된 정점을 의미한다. 단순 경로(simple path) : 경로 중에서 반복되는 정점이 없는 경우를 의미한다. 한붓 그리기와 같이 같은 간선을 지나가지 않는 경로를 의미한다. 차수(degree) : 무방향 그래프에서 하나의 정점에 인접한 정점의 수..

목차 스택이란 '쌓다' 라는 의미를 가지고 있는 스택(Stack)은 그 의미와 같이 데이터를 차곡차곡 쌓아올린 형태로 자료를 구성한다. 후입선출(Last-in First-out)의 자료구조이다. 앞자만 따서 LIFO 구조라고 하며, 마지막에 들어온 것이 먼저 나간다라는 뜻이다.(입구와 출구가 같은 자료구조) 입구와 출구가 하나밖에 없으니 데이터의 삽입과 삭제가 한 방향에서만 이루어진다. 스택에서는 흔히 데이터의 삽입 연산을 push, 삭제 연산을 pop 이라고 한다. 스택 활용 예시 웹 브라우저 방문기록(뒤로 가기) : 가장 나중에 열린 페이지부터 다시 보여준다. 역순 문자열 만들기 : 가장 나중에 입력된 문자부터 출력한다. 실행 취소(undo) : 가장 나중에 실행된 것 부터 실행을 취소한다. 후위표기..

목차 해시테이블 해시테이블이란? (Key, Value)로 데이터를 저장하는 자료구조 중 하나로 빠르게 데이터를 검색할 수 있는 자료구조이다. 해시 테이블이 빠른 검색속도를 제공하는 이유는 내부적으로 배열(버킷)을 사용하여 데이터를 저장하기 때문이다. 버킷 : 해시 테이블에 데이터를 저장하는 공간으로, 배열의 각 인덱스에 해당한다. 여러개의 슬롯을 가질 수 있다. 슬롯 : 한 버킷 내에서 각 데이터를 저장하는 개별적인 공간이다. 해시 테이블은 각각의 Key값에 해시함수를 적용해 배열의 고유한 index를 생성하고, 이 index를 활용해 값을 저장하거나 검색하게 된다. 해시테이블의 평균 시간복잡도는 O(1) 이다. 해시 함수 Division Method : 나눗셈을 이용하는 방법으로 입력값을 테이블의 크기..

목차 가상 메모리 가상 메모리란? 실제 물리적 메모리(RAM)의 용량을 넘어서는 메모리 요구를 처리하기 위한 기법이다. 여러 프로세스가 동시에 실행될 때, 가상 메모리는 물리 메모리(RAM)를 효율적으로 활용하고, 필요한 데이터를 디스크에 저장해 두어 물리 메모리가 부족한 경우에도 프로그램이 계속 실행될 수 있게한다. 가상 메모리 두가지 종류 물리적 메모리 : 실제 메모리 상에 존재하는 주소 논리적 메모리 : 프로세스에 메모리가 할당되었을 때, 현재 물리 메모리 안에서 실행중인 메모리의 위치를 나타내는 주소 가상 메모리의 단점 가상 메모리를 사용하면 성능이 느려지는데, 하드 드라이브의 속도가 RAM보다 느리기 때문이다. 페이징 페이징이란? 가상 메모리의 한 형태로 외부 단편화를 해결하기 위한 기법이다. ..

목차 알고리즘이란? 컴퓨터가 따라 할 수 있도록 문제를 해결하는 절차나 방법을 자세히 설명하는 과정이다. 이를 자세히 설명하면 컴퓨터를 활용한 문제 해결 과정에서 주어진 문제를 해결하는 일련의 방법 또는 절차이며, 문제해결 방법을 순서대로, 절차대로 나열한 것이라고 볼 수 있다. 알고리즘의 표현법 자연어 알고리즘 : 일상적으로 사용하는 말로써 문제를 해결하는 과정을 순서대로 나열하는 것이다. 순서도로 표현 : 약속된 기호를 사용하여 알고리즘을 표현하는 방법이다. 알고리즘의 5가지 조건 입력 : 외부에서 제공되는 자료가 0개 이상 존재해야 한다. * 입력이 없을 수 있다. 알고리즘 내부적으로 사전에 정의된 데이터나 설정을 사용하는 경우, 별도의 외부 입력이 필요하지 않을 수 있다. 출력 : 적어도 2개..