Computer Science

Computer Science/자료구조

2. 재귀

이번에는 재귀를 알아보겠습니다. 우선 재귀 알고리즘이란 알고리즘 자신을 이용해 정의된 알고리즘을 말합니다. 그리고 이러한 재귀는 재귀 케이스와 베이스 케이스로 이루어져 있습니다. 작동 원리 : 대기중인 재귀호출을 위한 저장/복구는 컴퓨터에 의해 자동적으로 수행됩니다. 그리고 만약 재귀알고리즘을 짜게 된다면 기본적으로 지켜야할 규칙들이 있습니다. 기본 규칙 베이스 케이스를 항상 가져야합니다. 재귀호출은 항상 베이스 케이스를 향해야 합니다. 저장/복구 때문에 성능이 저하되서 꼭 필요할 때만 써야합니다. 나쁜 재귀 베이스 케이스가 없거나 재귀 케이스가 베이스 케이스로 향하지 않습니다. 따라서 부정확한 결과, 미정지, 기억장소 고갈 등의 문제가 발생합니다. 이러한 재귀알고리즘에서 대표적으로 소개되는 사례는 하노..

Computer Science/자료구조

1. 알고리즘 분석

자료구조 복습을 하면서 쓰는 글입니다. 먼저 첫번째로 공부할것은 알고리즘 분석에 대한 것입니다. 알고리즘 분석에 있어서 우선 우리는 좋은 알고리즘과 데이터구조를 설계해야만 합니다. 그러므로 알고리즘을 만든다면 실행시간과 기억장소 사용량을 최적화 할 수 있어야합니다. 그리고 실행시간을 따진다면 우리는 최악의 실행시간에 집중해야합니다. 평균실행시간도 있지만 구하기가 어렵고 보통은 최악실행시간이 용이하게 쓰입니다. 이러한 실행시간을 구할때 실험적 방법과 이론적 방법으로 2가지로 나뉘게 됩니다. 먼저 실험적 방법으로 실행시간을 구하는 것입니다. 프로그램 작성 다양한 크기의 입력으로 실행 실행시간 측정 도표로 작성 하지만 실험적 방법에는 여러가지 한계가 있습니다. 모든 입력을 다 고려하는 것이 아니기 때문에 특정..

SpaceCowboy
'Computer Science' 카테고리의 글 목록 (2 Page)