본문 바로가기

알고리즘3

[Algorithm] 알고리즘의 정의 및 조건 알고리즘(**algorithm)**의 정의 주어진 문제의 결과를 생성하기 위해 모호하지 않고 간단하며 컴퓨터가 수행 가능한 유한개의 일련의 명령을 순서적으로 구성한 것 입출력 : 0개 이상의 외부 입력 → 1개 이상의 출력 명확성 : 각 명령은 모호하지 않고 단순 명확해야 함 유한성 : 한정된 수의 단계를 거친 후에는 반드시 종료 유효성 : 모든 명령은 컴퓨터에서 수행 가능해야 함 순차 탐색 앞에서 부터 하나씩 뒤로 가면서 탐색한다 이진 탐색 알고리즘을 설계하고 만들고 테스트 및 분석하는 방법 설계 상향식 설계 하향식 설계 표현/기술 일상 언어 단계 1, 단계 2, ... 순서도 플로우차트 등 의사코드 프로그래밍 언어 정확성 검증 수학적 증명 효율성 분석 공간 복잡도 시간 복잡도 알고리즘의 설계 기법 알.. 2022. 3. 9.
[Algorithm] 알고리즘의 개요 종류 (feat. 자료구조) 1. 알고리즘이란? 문제를 해결할 때 결과를 얻기 위해 거치는 일련의 단계적인 처리 과정이다. 보통 프로그램을 만들 때 문제를 효율적으로 해결하기 위해 많이 사용하며 데이터가 알고리즘을 거쳐 정보가 된다. 알고리즘을 잘 설계하고 분석하기 위해서는 문제 해결 방법에 대해 체계적으로 생각하는 훈련을 해야한다. 훈련을 통해 주어진 문제에 대한 지적 추상화 능력 및 통찰력이 향상된다. 2. 알고리즘의 중요성 컴퓨터를 이용해서 문제를 해결할 때 한정된 자원을 효율적으로 이용하여 일련의 단계를 거치기 위해 효율적인 알고리즘이 반드시 필요하다. 알고리즘의 한계 알고리즘의 분석 알고리즘의 개발 알고리즘의 실행 알고리즘의 통신 알고리즘의 표현 3. 알고리즘의 종류 1) 설계 분할 정복 알고리즘 이진 탐색 합병 정렬 퀵 .. 2022. 3. 9.
[운영체제] FCFS 스케줄링 알고리즘 vs RR 스케줄링 알고리즘 1. FCFS 스케줄링 알고리즘 vs RR 스케줄링 알고리즘 1) FCFS(First Come First Serve) 이란? 선착순 방식을 사용한 비선점 스케줄링 알고리즘이다. 가장 쉽고 간단한 CPU 스케줄링 알고리즘이며 FIFO(First In First Out)와 같이 먼저 요청하는 프로세스가 먼저 CPU를 할당받는다. 공평할 수 있지만 작업시간이 짧은 프로세스도 긴 대기시간을 가질 수 있고 중요한 작업이 비교적 덜 중요한 작업이 끝나기를 기다릴 수도 있어서 성능이 떨어진다. 2) RR(Round Robin) 이란? 시분할 시스템을 위한 선점 스케줄링 알고리즘이다. CPU의 메모리 자원을 사용할 기회를 공평하게 부여하기 위해 단위시간을 할당하여 그 시간이 넘어가면 순번을 맨 뒤로 넘기고 다음 프로세.. 2022. 3. 8.
728x90
반응형
LIST