Skip to main content
객체지향형 프로그래밍과 자료구조 동영상

객체지향형 프로그래밍과 자료구조




강좌소개

수업내용/목표

객체지향형프로그래밍은C프로그래밍에서실행순서와동작내용을고려한함수단위로
프로그램을 설계하고 구현하는 것과는 달리, C++나 Java의 클래스를 기반으로
객체 (object)를 설계하며, 각 단위 객체별로 시스템 안정성, 데이터의 보호 및 상세 구현 정보 은닉,
소프트웨어 재사용성, 시스템 확장성 등의 장점을 제공함으로써, 이들 객체를 기반으로 큰 규모의
시스템을 개발할 수 있게 하는 좋은 시스템 설계 및 구현 기법을 제공합니다.

본 강좌에서는 우선 C 기반의 프로그래밍 기초 지식을 배운 후, C++를 기반으로 클래스의 설계 및 구현,
Operator overloading, 상속 (Inheritance),Polymorphism,템플릿개념을배웁니다.

이어서, C++를 기반으로 한 자료구조에서는 연결형 리스트, 이진 트리, heap, 우선 순위큐, 맵,
해쉬 테이블, 스킵 리스트, 그래프에 대하여 배우며, 그래프 응용 문제의 해결 방안을 배웁니다.

강의영상을 보면서 객체 지향형 프로그래밍과 자료구조에 대해 기초부터 탄탄하게 공부해 보세요!

홍보/예시영상

강좌운영계획

강의계획표

 

주차

주차명

주차별 학습목표

차시

학습내용

학습활동

1

강의소개와 C프로그램의 기본

강의소개와 C프로그램의 기본

1-1

강의소개

퀴즈 2문항

1-2

프로그램 개발 절차 및 중점 고려사항

퀴즈 2문항

1-3

C 프로그램 기본 구조

퀴즈 2문항

2

프로그램 디버깅, 배열 및 응용

프로그램 디버깅, 배열 및 응용

2-1

C 프로그램 디버깅, 실행

퀴즈 2문항

2-2

배열, 탐색, 정렬

퀴즈 2문항

2-3

2차원 배열, 행렬, 선형 방정식의 해

퀴즈 2문항

3

포인터, 동적 배열

포인터, 동적 배열의 이해

3-1

Pointer(포인터)

퀴즈 2문항

3-2

동적 메모리 할당, 동적 배열

퀴즈 2문항

3-3

C프로그램의 함수 호출과 인수 전달

퀴즈 2문항

4

함수 호출과 인수 전달, 구조체와 그 응용

함수 호출과 인수 전달, 구조체와 그 응용

4-1

C프로그램에서의 파일 입출력

퀴즈 2문항

4-2

구조체, 구조체 배열, 자기참조 구조체

퀴즈 2문항

4-3

Byte Ordering, 비트단위 구조체

퀴즈 2문항

4-4

배열기반 기본 자료구조 스택

 

4-5

배열기반 기본 자료구조 , 우선 순위 큐

 

5

자기 참조 구조체, Multi thread구조 프로그래밍

자기 참조 구조체, Multi thread구조 프로그래밍

5-1

C 자기참조 구조체 기반 연결형 리스트

퀴즈 2문항

5-2

C 구조체 기반 Binary Tree

퀴즈 2문항

5-3

Binary Tree balancing

퀴즈 2문항

5-4

Multi-thread

퀴즈 1문항

6

함수 오버로딩, 템플릿, 성능측정, 알고리즘 기법

함수 오버로딩, 템플릿, 성능측정, 알고리즘 기법

6-1

함수 오버로딩과 함수 템플릿

퀴즈 2문항

6-2

성능 측정 (실행 시간, 메모리 사용)

퀴즈 2문항

6-3

알고리즘의 성능개선(1)
동적 계획법

 

6-4

알고리즘의 성능개선(2)
분할 정복

 

중간형성평가

중간 형성 평가 - 코딩/결과 source code 및 실행결과물 upload

7

C++기반 객체 지향 프로그래밍 개요

C++기반 객체 지향 프로그래밍 개요

7-1

C++ 기반 객체 지향 프로그래밍 개요

퀴즈 2문항

7-2

생성자 (constructor), 소멸자 (desctructor)

퀴즈 2문항

8

오퍼레이터 오버로딩

오퍼레이터 오버로딩

8-1

오퍼레이터 오버로딩 (1)

퀴즈 2문항

8-2

오퍼레이터 오버로딩 (2)

퀴즈 2문항

8-3

상속 (1)

퀴즈 2문항

9

상속

상속에 대한 이해

9-1

상속(2)

퀴즈 2문항

9-2

Polymorphism (1)

퀴즈 2문항

9-3

Polymorphism (2)

퀴즈 2문항

10

클래스 템플릿

클래스 템플릿에 대한 이해

10-1

More Tools, Exception Handling

퀴즈 2문항

10-2

클래스 템플릿

퀴즈 2문항

10-3

Standard Template Library (STL), Vector, List

퀴즈 2문항

11

자료구조 개요와 알고리즘 성능분석

자료구조 개요와 알고리즘 성능분석

11-1

자료구조 개요

퀴즈 2문항

11-2

알고리즘의 성능분석

퀴즈 2문항

11-3

Generic Linked List

퀴즈 2문항

11-4

Generic Stack, Generic Queue

퀴즈 2문항

11-5

Generic Binary Search Tree

퀴즈 2문항

12

Generic Linked List, Generic Binary Tree 2

Generic Linked List, Generic Binary Tree 2의 이해

12-1

Binary Tree Balancing

퀴즈 2문항

12-2

Heap, Priority Queue (1)

퀴즈 2문항

12-3

Heap, Priority Queue (2)

퀴즈 2문항

13

map, hash table, TRIE, Skip List, Dictionary

map, hash table, TRIE, Skip List, Dictionary의 이해

13-1

Map

퀴즈 2문항

13-2

Hash Table, Hash Map

퀴즈 2문항

13-3

Trie

퀴즈 2문항

13-4

Skip List

퀴즈 2문항

13-5

Dictionary

퀴즈 2문항

14

Graph Part1

Graph의 이해

14-1

Graph (1) - Graph 표현

퀴즈 2문항

14-2

Graph (2) - Depth First Search (DFS)

퀴즈 2문항

14-3

Graph (3) - Breadth First Search (BFS)

퀴즈 2문항

15

Graph Part2

Graph의 이해

15-1

Graph (4) - Shortest Path

퀴즈 2문항

15-2

Graph (5) - Minimum Spanning Tree (1)

퀴즈 2문항

15-3

Graph (6) - Minimum Spanning Tree (2)

퀴즈 2문항

15-4

과목총정리

 

최종수행평가

기말 최종 평가 - 코딩/결과 source code 및 실행결과물 upload

 

 

 

강좌운영팀 소개

교수자

김영탁 교수 professor
김영탁 교수 교수
영남대학교 공과대학 정보통신공학과 교수
미국 국립표준기술연구원 객원 연구원 (2001년, 2008년, 2015년)
한국통신 (KT) 통신망 연구소 선임연구원/실장 (1990년 4월 ~ 1994년 8월)
한국과학기술원 (KAIST) 전기 및 전자공학과 박사 (1990년 2월)
ytkim@yu.ac.kr

강좌지원팀

김민철
김민철
영남대학교 대학원 정보통신공학과 석사과정
kmc724@ynu.ac.kr

강좌수강정보

이수/평가정보

이수/평가정보

    15 주차에 걸친 학습을 완료하면 이수증을 발급해 드립니다.
    이수기준은 다음과 같습니다.

과제명

과제, 퀴즈

중간형성평가

최종수행평가

반영비율

40%

30%

30%

 총60%이상점수획득시,이수증을 발급 받을 수 있습니다.

강좌수준및선수요건

교재및참고문헌

김영탁(2019.8).자료구조와알고리즘을함께배우는C++프로그래밍,배움터.

자주 묻는 질문

진도상황은 어떻게 읽나요?

화면 상단 메뉴 '학습진행상황'에서 확인 가능합니다.

수강신청기간이종료되었는데수강신청할수있나요?

아니오, 수강신청기간이 종료되면 수강신청을 할 수 없습니다.

종강 이후에도 강좌 수강을 할 수 있나요?

네, 할 수 있습니다. (화면 오른쪽 상단에 있는 학습자 이름이 있는 버튼 클릭). 단, 복습만 가능합니다.

네, 강좌 참고 교재는 김영탁(2019.8). 자료구조와 알고리즘을 함께 배우는C++프로그래밍,배움터입니다.

영남대학교학생인데,이수를하게되면학점이인정이되나요?

아니오, 학점이 인정되지 않습니다.

기술적 문제(동영상 재생 및 과제 제출등의문제),콘텐츠 오류 등의 문의는 어떻게 해야하나요?

해당 주차 Q&A게시판을 이용하시거나 TA(조교)메일로 문의해 주시면 됩니다.

관련 강좌

현재 강좌와 관련있는 강좌를 찾을 수 없습니다.
  1. Subject

    Engineering
    (Computers & Communication)
  2. 강좌를 개발하고 운영하는 기관입니다. 컨소시엄으로 운영 시, 대표기관의 명칭이 나타납니다

    Institution

    Yeungnam University
  3. 강좌의 구성 주차 수를 의미합니다. (강좌를 충실히 학습하기 위해 필요한 주당 학습시간을 의미합니다.)

    Course Week
    (Estimated Effort)

    15week
    (주당 02시간 32분)
  4. 본 강좌 이수자에게 인정되는 학습시간으로 해당 강좌의 동영상, 과제, 시험, 퀴즈, 토론 등의 시간을 포함합니다. (강의 내용과 관련된 동영상 재생 시간의 총 합계입니다.)

    Accredited learning time
    (Video Duration)

    43시간 36분
    (36시간 40분)
  5. 수강신청이 가능한 기간으로 해당 기간 내에만 수강신청이 가능합니다.

    Registration Period

    2020.10.08 ~ 2020.11.29
  6. 강좌가 운영되고 교수지원이 이루어지는 기간입니다. 이수증은 강좌운영기간이 종료된 이후에 발급받을 수 있습니다.

    Classes Period

    2020.10.19 ~ 2021.01.31
Enroll