본문 바로가기

전체보기

(461)
[85] 알고리즘 04차시 기본적인 정렬 알고리즘 1. 선택 정렬 가. 정렬(Sorting) 데이터의 순서를 결정하는 것 데이터를 저장하는 위치에 따라 내부 정렬(Internal Sort)과 외부 정렬(External Sort)로 구분 나. 내부 정렬 데이터 양이 적을 때 주기억장치 내에 저장한 자료를 대상으로 정렬하는 방법 정렬할 자료의 양이 적어서 자료 전체가 주기억장치에 저장될 수 있는 경우에는 내부 정렬을 사용하여 자료를 정렬 선택 정렬, 버블 정렬, 삽입 정렬, 쉘 정렬, 퀵 정렬 등 다. 외부 정렬 입력의 크기가 주기억 장치 공간보다 큰 경우 보조 기억 장치에 있는 입력을 여러 번에 나누어 주기억 장치에 읽어 들인 후 정렬하여 보조 기억 장치에 다시 저장하는 과정을 반복 라. 정렬 알고리즘의 복잡도 대부분 \(O(n^{2})\)과 \(O(n\..
[84] 알고리즘 03차시 점화식과 점화식의 점근적 분석 1. 알고리즘과 문제 해결 가. 문제해결 전략 주어진 조건에 맞추어 다각도로 문제에 접근 문제를 철저히 분석 그림을 그리거나, 식을 만들거나, 또는 규칙 찾기 조건에 따라 거꾸로 생각해보기 단계적으로 생각하기(알고리즘) 2. 점화식 가. 점화식(Recurrence Relation) 어떤 함수를 자신보다 더 작은 변수에 대한 함수와의 관계로 표현한 것 자기호출을 사용하는 함수(재귀)의 복잡도를 구하는데 유용함. 수열은 원소들을 일정한 순서로 나열한 형태로 표현하는데 이러한 원소들 사이에는 일정한 규칙이 있을 수 있고 원소들의 나열 대신 이 규칙으로 표현하는 것도 점화식임 https://ko.wikipedia.org/wiki/점화식 점화식 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전...
[83] 소프트웨어공학 04차시 프로젝트 관리 1. 프로젝트 관리의 단계 가. 프로젝트란? 1) 프로젝트는 실패하기 쉬운 작업 프로젝트를 어떻게 수행하는 것이 성공의 가능성을 높일 것인가? 2) 프로젝트 관리의 정의 프로젝트의 요구사항을 만족시키기 위하여 지식, 스킬, 도구 및 기법을 프로젝트 활동에 적용하는 것 "The application of knowledge, skills, tools, and techniques to project activities to meet project requirements"(PMI) 나. 프로젝트 관리의 단계 1) 착수(Initiating) 새로운 프로젝트의 시작을 공식적으로 승인 입안, 발주, 제안, 평가, 협상, 계약으로 이어지는 프로젝트 추진 절차 2) 계획(Planning) 프로젝트에서 수행해야 할 목표 ..
[82] 소프트웨어공학 03차시 소프트웨어 개발 프로젝트 1. 소프트웨어 개발 프로젝트의 중요성 가. 소프트웨어 개발 프로젝트의 목표 1) 실패에 대한 위험 감소 소프트웨어 개발을 프로젝트로 관리하여 성공의 가능성을 높임. 나. 프로젝트의 정의 프로젝트는 유일한 제품이나 서비스를 만들기 위해 수행되어야 할 일시적인 활동과정 "A project is a temporary endeavor undertaken to create a unique product or service"(PMI) 1) PMI와 PMBOK PMI(Project Management Institute): 프로젝트 관련 국제적인 단체 PMBOK(Project Management Body Of Knowledge): PMI에서 4년마다 한 번씩 발간하는 책 PMP(Project Management Pr..
[81] 데이터베이스 04차시 데이터베이스 관리 시스템 구성 1. 데이터베이스 관리 시스템의 구성 가. DBMS 구성 모듈 1) 데이터 정의 언어 컴파일러(DDL Compiler) 데이터 정의 언어로 명시된 스키마 정의들을 처리 스키마들에 대한 정보(메타 데이터)를 DBMS 카탈로그 안에 저장함. 카탈로그는 파일의 이름과 크기, 데이터 항목의 이름과 데이터 타입, 각 파일의 저장 형태, 스키마 사이의 사상 정보, 제약 조건들에 대한 정보 등을 포함 다른 모듈들은 이런 정보가 필요할 때 마다 카탈로그에 접근 2) 질의 컴파일러(Query Compiler) 대화식으로 입력된 고수준 질의들을 파싱하여 연산과 데이터 요소들이 정확한가를 분석하고 내부 형태로 컴파일 함. 3) 질의 최적화기(Query Optimizer) 질의 컴파일러에 의해 생성된 내부 형태는 질의 최적화..
[80] 데이터베이스 03차시 데이터베이스 관리 시스템 1. 데이터베이스 관리 시스템의 개념 가. DBMS 아키텍처 개요 초기 DBMS 아키텍처는 밀접하게 통합된 거대한 시스템으로 구성 현재는 클라이언트/서버 아키텍처 1) 클라이언트 워크스테이션 / 개인용 컴퓨터에서 동작 응용 프로그램 실행 사용자 인터페이스 제공 2) 서버 데이터 저장, 접근, 탐색 등을 수행 2. 데이터 스키마와 인스턴스의 개념 가. 데이터 모델 현실 세계의 정보들을 컴퓨터에 표현하기 위해 단순화, 추상화하여 체계적으로 표현한 모형 데이터 추상화는 데이터 저장구조와 세부사항을 감추고, 데이터를 잘 이해하는데 도움이 되는 필수적인 특징들을 강조하는 것 추상화를 제공함으로써 여러 사용자들이 각자 선호하는 수준에서 데이터를 볼 수 있음. 1) 데이터 모델에 표시할 요소 데이터 구조, 연산, 제..
[79] C언어 04차시 기본 입출력함수 1. 식별자 개념과 규칙 가. 식별자(identifier) 구별하기 위해 사용되는 이름 변수명, 배열명, 함수명, 구조체명 나. 키워드(keyword) 예약어(reserved word) C언어에서 고유한 의미를 가지고 있는 특별한 단어 다. 변수명 작성 규칙 영문자, 숫자, 밑줄(_) 사용 가능 첫 번째 문자는 반드시 영문자 또는 밑줄(_)이어야 함. 예약어 사용 불가 특수문자 사용 불가(밑줄 제외) 대소문자 구별함. 라. 좋은 변수 이름 역할을 가장 잘 설명하는 이름 여러 단어로 되어 있는 변수 이름은 단어와 단어를 밑줄로 연결하거나 다음 단어의 첫문자를 대문자로 사용 일관성 있도록 사용 2. printf() 함수 가. 기능 모니터에 출력을 하기 위한 표준 출력 라이브러리 함수 #include 나. 역..
[78] C언어 03차시 C언어 기본구조 1. C 프로그램 구조 이해 가. 프로그램 작성 방법 나. 프로그램 기본 구조 1) C언어 함수 기반 언어 하나 이상의 함수로 구성됨. main() 함수는 반드시 필요(프로그램의 시작) 2) 함수 특정한 작업을 수행하도록 한 개 이상의 문장으로 구성된 독립된 코드 3) C 프로그램의 기본 구조 /* 기본 구조 */ #include int main(void) { printf("Hello World!"); return 0; } 4) 주석(Comment) /* 기본 구조 */ 프로그램을 설명하는 문장 프로그램의 실행에는 영향을 끼치지 않음 컴퓨터를 위한 것이 아니고 프로그램을 하는 사람을 위한 것 프로그램의 가독성을 높임 아무리 많아도 실행프로그램의 크기가 커지지 않음 일반적으로 많을수록 좋음 5) 전처리기 ..