모듈1. 배열 개요 1) 데이터의 표현 (1) 고급 표현 특징 추상적이고 논리적인 표현 추후 저급의 데이터와 연산자로 구현해야 실행될 수 있음 연산자의 구현은 데이터의 저급 표현 방법에 의존 (2) 저급 표현 방법 순차 표현(sequential representation) = 배열(array) 연결 표현(linked representation) = 연결 리스트(linked list) 2) 배열이란? 모듈2. 배열 추상 데이터 타입 1) 배열과 인덱스 (1) 배열의 정의: 주어진 각 index에 대해 하나의 value가 연관된 쌍들의 집합을 "배열(array)"이라고 한다. (포인터에는 주소만!) (2) 인덱스(index) = 메모리 안 주소 순서를 나타내는 원소의 유한 집합 집합 내에서의 상대적 위치 식..
0. 프로그램의 성능 평가 1) 프로그램의 일반적인 평가 항목들 프로그램이 처음에 정한 문제의 sepcifications을 만족하는가? 프로그램의 documentation이 충분한가? 프로그램이 readable한가? 프로그램이 correct하게 옳은 답을 내는가? 문제의 논리적 단위를 생성할 때, 함수를 효율적으로 사용했는가? 프로그램의 수행 시간이 늦지 않은가? 프로그램이 storage(memory, disk)를 효과적으로 사용하는가? 2) 프로그램의 성능을 측정하는 방법들 (1) Time & Space 측정법(15% 정도) : Program 성능을 측정하기 위해, Machine(HW)과 독립적인 다음 2가지 SW적 요소를 분석하는 방법 Time 요소(효율성, efficiency, 속도 지향) Spac..
1. 순환(recursion) 1) 정의: 자신을 정의할 때 자기 자신을 재참조하는 방법 2) 사용 형태: 프로그래밍에 적용한 "함수의 재귀 호출(Recursive call)"의 형태로 많이 사용 3) 재귀 호출(Recursive call)의 종류 (1) 직접 순환(direct call) : 함수가 직접 자신(이름)을 호출 eg) A(A()) (2) 간접 순환(indirect call) : 다른 제 3의 함수를 호출하고, 그 함수가 다시 자신(이름)을 호출 eg) A(B(A())) 4) 순환 방식의 적용 (1) 분할 정복(Divide and Conquer)의 특성을 가진 문제에 적합 어떤 복잡한 문제를 간단하게 풀 수 있는 직접적인 작은 문제로 분할하여 해결하려는 방법 분할된 문제가 원래의 큰 문제와 그..
- Total
- Today
- Yesterday
- 의사코드
- jre
- 바이트코드
- 프로그래밍언어
- 브라우저
- 익스플로러
- 소스파일
- VisualStudio
- SWLIfeCycle
- D&C
- 크롬
- 비주얼스튜디오
- 데이터구조
- jvm
- 기계어
- 구글크롬
- 브라우저뜻
- 데이터추상화
- 프론트엔드
- javase
- 앱개발
- 구현
- 사이트만들기
- 개발계발
- SW생명주기
- 알고리즘
- 웹개발자
- Abstraction
- vscode
- ADL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |