본문 바로가기

전산 기초

[소프트웨어공학] 소프트웨어 생명 주기(Software Life Cycle) * 소프트웨어 생명 주기 요구분석 -> 시스템명세 -> 설계 -> 구현 ->테스트-> 유지보수 1. 요구 분석 단계 : Requirement analysis개발할 소프트웨어의 기능과 제약조건, 목표 등을 소프트웨어 사용자와 함께 명확히 정의하는 단계.개발해야 할 소프트웨어의 성격을 정확히 이해하고 개발 방법과 필요한 자원과 예산을 예측해야한다.요구 명세서를 정확하게 작성해야 한다. 2. 시스템 명세 단계 : System Specification시스템이 무엇을 수행해야 하는가를 정의시스템 기능 명세서를 작성하여 입력 데이터, 처리내용, 생산 결과가 무엇인지를 정의 3. 설계 단계 : Design시스템 명세 단계에서 정의한 기능을 실제 수행할 수 있도록 수행 방법을 논리적으로 결정시스템 구조 설계, 프로그램.. 더보기
[자료구조] 자료구조 시작 * 자료구조 란? - 자료를 효율적으로 관리하기 위한 데이터 구조 - [자료구조의 분류] - 단순구조 : 정수, 실수, 문자, 문자열- 선형구조 : 리스트, 연결리스트(단순 연결리스트, 이중 연결리스트, 원형 연결리스트), 스택, 큐, 덱- 비선형구조 : 트리(일반트리, 이진트리), 그래프(방향그래프, 무방향그래프)- 파일구조 : 순차파일, 색인파일, 직접파일 [자료의 표현] - 비트(bit) : 디지털 시스템에서 자료를 표현하는 최소 단위- 니블(nibble) : 4개의 비트 그룹- 바이트(Byte) : 8개의 비트 그룹 더보기
[정렬] 삽입정렬 (Insertion Sort) * 삽입정렬 (Insertion Sort) - 정렬 대상을 두 부분으로 나누어 정렬되지 않은 부분에 있는 데이터를 정렬된 부분의 특정 부분에 삽입해 가면서 정렬을 진행(key 값 을 선택하여 이미 정렬된 숫자 사이에 삽입) [시간복잡도]- 최선의 경우 O(n) [1, 2, 3, 4] 5, 6, 7, 8정렬된 요소들과 정렬되지 않은 요소가 전체적으로 오름차순 정렬을 이루고 있는 경우- 최악의 경우 O(n^2) [5, 6, 7, 8] 4, 3, 2, 1 정렬된 요소의 맨 앞에 있는 값이 정렬되지 않은 요소들의 값보다 항상 크고,정렬되지 않은 요소들의 값이 내림차순인 경우 ※ 오름차순 정렬에 대한 설명.input = [47, 15, 36, 26, 27, 2] 자~ 이제 정렬을 시작합니다!전체 요소들 중 제일 .. 더보기
[정렬] 선택정렬 (Selection Sort) * 선택정렬 (Selection Sort) - 선택을 해서 정렬하는 알고리즘 - 최소선택정렬 : 가장 작은 숫자를 선택(오름차순) - 최대선택정렬 : 가장 큰 숫자를 선택(내림차순) - 개선된 선택 정렬(기존의 선택정렬은 정렬하기 위한 배열이 하나 더 필요함) - 최선, 최악의 경우가 따로 존재하지 않음 - 시간복잡도 O(n^2) ※ 오름차순 정렬에 대한 설명. input = [15, 36, 26, 27, 2, 46] - 정렬되지 않은 요소들의 맨 앞에 있는 요소를 minimum으로 설정한다. - 전체 요소들을 검사하면서 minimum(=15) 보다 작은지 비교한다. - minimum(=15) 보다 작은 숫자 2를 발견하게 되면 'minimum = 2' 로 만들어준다. - 나머지 요소들을 계속 검사하면서.. 더보기
[정렬] 버블정렬 (Bubble Sort) * 버블정렬 (Bubble Sort) - 인접한 두개의 데이터를 비교하면서 정렬- 최선, 최악의 경우가 따로 존재하지 않음- 시간복잡도 O(n^2) ※ 오름차순 정렬에 대한 설명.input = [3, 44, 38, 5, 47, 15] - 다음과 같이 맨 처음의 숫자와 그다음의 숫자를 비교해 둘 중 더 큰 숫자를 오른쪽으로 이동한다.- '3'과 '44' 중 44가 더 크므로 자리이동이 발생하지 않는다. - 다음으로 두번째 숫자인 '44'와 '38'을 비교한 경우 '44'가 더 크므로 오른쪽으로 자리이동이 발생한다. ...- 위처럼 계속해서 좌, 우 숫자를 계속해서 비교하면서 숫자를 정렬시켜 나간다.- 이렇게 한번 모든 모든 숫자를 비교하게 되면 아래 그림처럼 제일 큰 숫자가 맨 뒤에 위치하게 된다. - 이.. 더보기