본문 바로가기

자료구조

(3)
[자료구조] 4. 리스트(List)1 - 리스트ADT / 순차 리스트와 연결 리스트 / 순차 리스트 구현 더보기 리스트란?, 리스트의 특징 4.1 리스트의 ADT 4.2 리스트의 구현 방법 4.3 순차 리스트 구현 1) 순차 리스트의 정의 2) 순차 리스트 기초 연산 3) 항목 추가 연산 4) 항목 삭제 연산 4.4 연결 리스트 1) 연결 리스트의 구조 2) 연결 리스트의 종류 리스트에는 데이터들이 차례대로 나란히 저장되어 있다. [리스트의 특징] 리스트의 항목들은 순서 또는 위치를 가진다. 중복된 데이터의 저장을 막지 않는다. 4.1 리스트의 ADT [리스트의 ADT] ◾ 객체 : n개의 요소들로 구성된 순서 있는 모임. ◾ 연산 : 리스트를 초기화한다. 특정 위치에 요소를 추가한다. 맨 처음 위치에 요소를 추가한다. 맨 끝 위치에 요소를 추가한다. 특정 위치의 요소를 제거한다. 리스트의 모든 요소를 제거..
[자료구조] 2. 알고리즘 성능 분석 - 시간 복잡도 분석 / 빅오 표기법 더보기 알고리즘 성능 평가 지표 2.1 시간 복잡도 분석 방법 시간 복잡도 분석이란? 1) 시간 복잡도 함수 2) 알고리즘 효율성의 세 가지 경우 2.2 빅오 표기법 빅오란? 1) 빅오의 수학적 판별법 2) 간단하게 빅오를 구하는 방법 3) 대표적인 빅오 알고리즘의 성능은 '속도'와 '메모리의 사용량' 이렇게 두 가지 지표로 평가된다. 시간 복잡도 : 속도에 해당하는 알고리즘의 수행 시간 분석 결과. 공간 복잡도 : 메모리 사용량에 대한 분석 결과. 일반적으로 알고리즘을 평가할 때는 메모리의 사용량보다 실행 속도에 초점을 둔다. 2.1 시간 복잡도 분석 방법 알고리즘을 이루고 있는 연산의 횟수를 세는 방법. 직접 구현하지 않고도 모든 입력을 고려하는 방법이고 실행 하드웨어나 소프트웨어 환경과는 관계없이 ..
[자료구조] 1. 자료구조와 알고리즘, 추상 자료형(ADT) 더보기 1.1 자료구조와 알고리즘 1) 자료구조 2) 알고리즘 1.2 추상 자료형(ADT) 1.1 자료구조와 알고리즘 1) 자료구조 자료구조 : 데이터의 표현 및 저장 방법. 자료들을 정리하여 보관하는 여러 가지 구조들. [자료구조 분류] 2) 알고리즘 알고리즘 : 문제의 해결 방법. 컴퓨터로 문제를 풀기 위한 단계적인 절차. 특정한 일을 수행하는 명령어들의 집합. 자료구조가 결정되어야 그에 따른 효율적인 알고리즘을 결정할 수 있기 때문에 자료구조와 알고리즘은 밀접한 관계를 갖고, 알고리즘은 자료구조에 의존적이다. [알고리즘의 조건] 입력 : 0개 이상의 입력이 존재해야 한다. 출력 : 1개 이상의 출력이 존재해야 한다. 명백성 : 명령어의 의미는 모호하지 않고 명확해야 한다. 유한성 : 한정된 수의 단..