강의계획서

교과목명 데이터구조 영문교과목명 Data Structure
교과목코드 ECE3314 주관학과(부) 전자공학과
작성일 2022.01.16 작성자 김덕환 강의요일/시간 월 10,월 11,월 12,목 10,목 11,목 12
학수구분 전공선택 교과영역 전공설계 인증구분 인선
대상학년 3 분반 001 강좌평가 방법 상대평가
학점구성 3학점 (이론:2 , 설계:1 , 실험/실습:0) 년도/학년/학기 2022/3/1
담당 성명 김덕환 연구실 하-814 강의실 하-701
상담시간 화7,목13 전화번호 032-860-7424
E-MAIL deokhwan At inha dot ac dot kr 홈페이지 http://iesl.inha.ac.kr
특별지원관련 장애학생의 원활한 수강을 위하여 지원이 필요한 경우 담당교원 및 장애학생지원센터(☎860-7067)와 사전에 협의할 수 있습니다.
교수 프로필 서울대학교 계산통계학과 학사
한국과학기술원 컴퓨터공학 석사
한국과학기술원 컴퓨터공학 박사
전산조직응용기술사
LG전자 통신기기소프트웨어실 선임연구원
University of Arizona postdoc
인하대학교 전자공학부 교수
프로그램
학습성과
(PO)
NO 내용 중요도
1 수학, 기초과학, 공학의 지식과 정보기술을 전자공학문제 해결에 응용할 수 있는 능력
5 전자공학의 현실적 제한조건을 고려하여 시스템, 요소, 공정 등을 설계할 수 있는 능력
6 전자 공학문제를 해결하는 프로젝트 팀의 구성원으로서 팀 성과에 기여할 수 있는 능력
전공능력 1. 지식 응용역량 : 수학, 기초과학, 공학의 지식과 정보기술을 전자공학문제 해결에 응용할 수 있는 능력
2. 자가 문제 해결 역량 : 전자공학 문제를 정의하고 공식화할 수 있는 능력
강의개요 본 과목은 전자공학분야의 프로그래밍을 위한 데이터구조 및 기본 알고리즘을 다룬다. 배우게 될 지식은 데이터 표현, 데이터구조와 알고리즘 분석의 방법이며, 프로그래밍에 많이 사용되는 Arrays, linked lists, stack, queue, trees, search trees, graphs, sorting, hashing 을 배운다. 본 과목에서는 전자공학에 관계된 실예제들을 많이 다룬다. 선수과목은 ‘C언어 프로그래밍’ 이다. 전자공학을 전공하는 학생 대다수가 미래에 프로그래밍과 관련되게 되며, 본 과목을 수강함으로써 학생들은 차후 프로그래밍을 하게 될 때 더 많은 기술과 넓은 시야로 수월하게 코딩 및 디버깅을 할 수 있다. 본 과목은 컴퓨터 프로그램을 하는 모든 분야에 도움이 된다. 신호처리, SoC설계, 스마트폰, 전기자동차, 레이더 미사일을 이용하는 국방산업, 항공우주산업, 통신산업 등 대부분의 전자산업분야가 응용분야이다.
Writing elegant and efficient programs requires practice and skills that will be developed in this course. While increasingly fast computers may tempt us to use sloppy code, today’s powerful machines are also solving phenomenally complex problems, manipulating terabytes of data, and threading thousands of simultaneous processes. The obvious (slow) solutions will rarely work on these processor-intensive and memory-hogging realworld problems. This course will help you evaluate the correct algorithms to use for practical applications.
교과목
학습성과
NO 강의목표 프로그램 학습성과 관련성(PO)
1 전자공학에 필요한 수학, 기초과학 및 공학지식과 이론을 응용할 수 있는 능력 배양 The goal of the course is to teach fundamental data structures, which allow one to store collections of data with fast updates and queries. We will cover most of chapters 1-8, and parts of 9-10 as time permits. Key topics will definitely include: Basic Concept of Algorithm, Performance analysis and measurement, linked lists, stacks and queues, trees, hashing, priority queues, sorting, graphs.
2 전자공학에 관련된 그림, 숫자 및 문서자료 등을 이해하고 분석할 수 있는 능력 배양; 복합 학제적 팀의 한 구성원 역할 해낼 수 있는 능력
3 요구된 필요조건(사양)에 맞추어 전자공학의 요소, 시스템 및 공정을 설계할 수 있는 능력 5
주교재
NO 교재명 저자 출판사 출판년도 ISBN
1 FUNDAMENTALS OF DATA STRUCTURES IN C E. HOROWITZ, S. SAHNI, S. FREED, Second Edition, COMPUTER SCIENCE PRESS 2008 0-7167-8250-2
부교재
및 참고자료
NO 교재명 저자 출판사 출판년도 ISBN
1 Introduction to Algorithms Thomas H. Cormen 한빛미디어 2001 89-7914-317-6
강의진행방식 강의, 숙제( 연습문제 풀이, C 프로그램)
숙제는 원칙적으로 C 프로그램으로 해야 하나, 그외 C++, JAVA언어를 사용해도 무방함
Students are expected to be proficient in a C or JAVA programming language.
Blended 방법
수강시
유의사항
1. 선수과목으로 C 프로그래밍 과목을 이수하여야 한다.
2. 프로그램 숙제는 자신이 작성하여야만 의미가 있다.
3. 수업참여도를 높이기 위해 퀴즈를 볼 예정임
선수과목 컴퓨터프로그래밍
e-learning
중간고사유형
평가기준
중간고사 기말고사 출석 과제 퀴즈 토론 기타
30.0% 30.0% 10.0% 30.0% 0.0% 0.0% 0.0% 100%
평가기준
세부내역

주별 세부내용

강의 진행 계획서
주차 구분 내용 강의 방식
1 강의주제 Introduction 1회차 :
2회차 :
강의내용 Introduction to algorithm and data organization
시험과제
2 강의주제 Basic Concepts 1회차 :
2회차 :
강의내용 System Life Cycle, Algorithm, Data Abstraction, Performance Analysis
시험과제
3 강의주제 Arrays and Structures 1회차 :
2회차 :
강의내용 Arrays, Structures, Self-Referential Structures, Sparse Matrix, MultiDimensional Arrays
시험과제
4 강의주제 Stacks and Queues 1회차 :
2회차 :
강의내용 Stack, Queue, Mazing Problem, Multiple Stacks and Queues
시험과제
5 강의주제 Linked Lists 1회차 :
2회차 :
강의내용 Pointers, Singly Linked Lists, Dynamically Linked Stacks and Queues
시험과제
6 강의주제 Trees (Basic facts, binary Trees) 1회차 :
2회차 :
강의내용 Binary Trees, Binary Tree Traversals, Binary Tree Operations
시험과제
7 강의주제 Trees (Search, Heap) 1회차 :
2회차 :
강의내용 Priority Queues, Binary Search Trees
시험과제
8 강의주제 MidTerm Exam 1회차 :
2회차 :
강의내용
시험과제
9 강의주제 Binary Search Trees, SET, FOREST 1회차 :
2회차 :
강의내용 Forests, SET Representation, Counting Binary Trees
시험과제
10 강의주제 Graphs (Basic Facts, Representation) 1회차 :
2회차 :
강의내용 Graph Data Type, Graph Operation
시험과제
11 강의주제 Graphs (Shortest Path, Spanning Tree) 1회차 :
2회차 :
강의내용 Shortest Path, Transitive Closure
시험과제
12 강의주제 Internal Sorting (Insertion, Bubble, Quick, Merge) 1회차 :
2회차 :
강의내용 Searching, List Verification, Insertion Sort
시험과제
13 강의주제 Internal Sorting(Heap), External Sorting 1회차 :
2회차 :
강의내용 Heap Sort, Radix Sort, List And Table Sort
시험과제
14 강의주제 Hashing 1회차 :
2회차 :
강의내용 Static Hashing, Dynamic Hashing
시험과제
15 강의주제 Final Exam 1회차 :
2회차 :
강의내용 Final Exam
시험과제
16 강의주제 보강실시, 기초교양필수 기말고사 1회차 :
2회차 :
보강계획
휴업일 휴업사유 성명 휴업일 수업 보강 주간 수업 별도 보강 수업
20220505 어린이날 김덕환
20220606 현충일 김덕환
시험과제

설계계획서

교과목명 데이터구조 교과목영문명 Data Structure
과목코드 ECE3314 분반 001
담당교수 김덕환 인증구분 인선
교과영역 전공설계 학점 3
프로그램
학습성과
NO 내용 중요도
1 수학, 기초과학, 공학의 지식과 정보기술을 전자공학문제 해결에 응용할 수 있는 능력
5 전자공학의 현실적 제한조건을 고려하여 시스템, 요소, 공정 등을 설계할 수 있는 능력
6 전자 공학문제를 해결하는 프로젝트 팀의 구성원으로서 팀 성과에 기여할 수 있는 능력
교과목
학습성과
NO 강의목표 프로그램 학습성과 관련성(PO)
1 전자공학에 필요한 수학, 기초과학 및 공학지식과 이론을 응용할 수 있는 능력 배양 The goal of the course is to teach fundamental data structures, which allow one to store collections of data with fast updates and queries. We will cover most of chapters 1-8, and parts of 9-10 as time permits. Key topics will definitely include: Basic Concept of Algorithm, Performance analysis and measurement, linked lists, stacks and queues, trees, hashing, priority queues, sorting, graphs.
2 전자공학에 관련된 그림, 숫자 및 문서자료 등을 이해하고 분석할 수 있는 능력 배양; 복합 학제적 팀의 한 구성원 역할 해낼 수 있는 능력
3 요구된 필요조건(사양)에 맞추어 전자공학의 요소, 시스템 및 공정을 설계할 수 있는 능력 5
순번 항목 내용
1 설계과제(topic) sorting 및 search 알고리즘을 이용한 자료 검색 프로그램 설계
교육내용(Contents) 문제에 대한 컴퓨터 데이타 표현기법으로서 기존에 개발된 많은 자료구조에 대해서 배우며, 이러한 자료구조를 이용하여 문제를 해결하는 알고리즘들과 알고리즘을 분석하는 기법에 대해서 배운다
설계요소
(DesignElements)
목표설정
(OBjectives Setting)
새로운 알고리즘을 적용한 프로그램
합성
(Synthesis)
데이타구조와 알고리즘의 적절한 결합
분석
(Analysis)
제시된 데이터의 자료구조를 분석하고 자료 검색에 적합한 sorting 및 serarch 알고리즘을 선택한다.
제작(Construction) 프로그래밍언어를 이용한 구현
시험(Testing) 디버거등을 통한 검증
평가
(Evalution)
블랙박스 테스트, 화이트 박스 테스트
제한조건
(Constraints)
경제
(Economy)
제작비용, 지적재산권
환경
(Environment)
개발환경, 동작환경
사회
(Social)
사회적 국제적 파급효과
윤리
(Ethics)
프로그램의 복제 방지 및 불법 복제 체크
미학
(Aesthetic)
사용자 인터페이스 등을 고려
보건 및 안전
(Health and Safety)
바이러스 등에 대한 안전성 검토
생산성과내구성
(Productivity
and Durability)
공간 복잡도 및 시간 복잡도를 최소화 한다.
산업표준
(Industrial Stundard)
관련 법규 조사
설계결과물
(Products)
알고리즘 및 프로그램 설계도
평가방법
(Evalution Tools)
알고리즘 및 프로그램 설계의 적절성 및 다양한 실행조건에서의 프로그램 실행