본문으로 바로가기
반응형

+ 프로그램 개발 과정 

일반적으로 프로그램을 개발할 때는, 아래와 같이 5가지 단계를 거쳐 개발이 됩니다.

 

 

요구사항 → 분석 설계 정제 및 코딩 검증

 

 

이때 요구사항, 분석, 설계 단계에서 필요한 부분이 바로 자료구조와 알고리즘입니다.

보통 프로그램은 데이터를 유한이 입력하여 결과를 뽑아내는 구조인데,

입력을 통해 결과 추출 할 때, 보통 자료구조와 알고리즘이 쓰입니다.

 

그럼, 자료구조와 알고리즘의 정의에 대해 알아보겠습니다.

 


+ 자료구조 및 알고리즘 

• 자료구조 : 문제를 해결하기 위해 표현하는 데이터 조직

• 알고리즘 : 표현된 데이터를 처리하기 위한 명령어들의 단계별 절차

• 프로그램 : 프로그래밍 통한 알고리즘의 구현


+ 알고리즘의 중요성

같은 문제를 풀더라도 컴퓨터 프로그래밍에선 효율이 엄청 중요합니다.

예를 들어, 구글이나 네이버와 같은 포털사이트에서 [IT]라고 검색을 한다고 할 때,

1초가 걸리냐 1분이 걸리냐와 같이 눈에 띄는 차이를 보입니다.


+ 알고리즘의 조건 

알고리즘은 아래와 같은 조건을 만족해야만 합니다.

• 0개 이상 입력

• 1개 이상 출력 

• 명확한 명령

• 유한한 단계

• 유효한 명령어


+ 알고리즘 기술 방법 

알고리즘을 기술하는 방법에는 자연언어 기술, 플로차트 기술, Pseudo-Code 총 3가지 방법이 있습니다.

최소값을 찾는 알고리즘에 대한 각각의 예를 살펴보겠습니다.

 

• 자연언어 기술 

 최소값(A, n) 

 1. 배열 A의 첫번째 값을 temp에 저장한다.

 2. 배열의 A의 다음 값들을 현재 temp와 비교하여 더 작으면 temp에 저장한다.

 3. 2의 과정이 완료되면 temp 값을 반환한다.

 

• Pseudo-Code 기술

알고리즘 최소값(A, n) 

입력 : n개의 정수 값이 저장된 배열 A 

출력 : A에서 가장 큰 값 

 temp <- A[1] 

 for i <- 2 to n do 

 if temp > A[i] then 

 temp <- A[i]  

return temp 

 

 

반응형