170 likes | 179 Views
Learn about efficient ways to store and manage data in a computer while optimizing time and space complexities. Explore arrays, stacks, queues, linked lists, trees, graphs, sorting, and hashing.
E N D
자료구조Data Structures 2015년 2학기 2015. 9. 김한준
자료구조 시간 효율성 및 공간(메모리) 효율성을 높이기 위한 데이터의 구조는 ? 예) Big Data를 표현하기 위한 구조 Stack Graph Queue
Data Structures • Efficient ways of storing and organizing data in a computer • provide a means to manage huge amounts of data efficiently • Ex) Big data: Web data, medical data, communication data, and whatever Data Mining Laboratory
Data Structures Efficient data structures Efficient algorithms Good quality software Data Mining Laboratory
Data Structures • Efficient ? • Space complexity • Time complexity Data Mining Laboratory
강의 내용 주요 자료구조 • Arrays • Stacks • Queues • Linked List • Tree • Graph • Sorting • Hashing Data Mining Laboratory
Stacks • LIFO (Last-in First-out) • push/pop operations • Applications • Calculators • Backtracking • Solving maze problems Data Mining Laboratory
Queues • FIFO (First-In First-Out) • add/delete operations • Applications • service/job scheduling Data Mining Laboratory
Trees • Hierarchical tree structure with a set of linked nodes • binary trees • binary search trees • threaded binary trees • heap • selection trees Data Mining Laboratory
Graphs • A finite set of ordered pairs of edges and vertices • Applications • path finding • social network mining Data Mining Laboratory
Sorting • 종류 • Selection sorting • Insertion sorting • Bubble sorting • Quick sorting • Heap sorting • Merge sorting • Radix sorting • … Data Mining Laboratory
Hashing Hash Tables • Using a hash function to map key values to their associated values Data Mining Laboratory
강의 교재 • Textbook • C언어로 쉽게 풀어 쓴 자료구조 • 저자: 천인국외 2인 • 출판사: 생능출판사 • 출판년도: 2014년 • 강의 시간에 필수 지참 Data Mining Laboratory
강의 정보 • 강의 홈페이지 • http://datamining.uos.ac.kr/=> “자료구조” 클릭 • 강의일정 관련정보 게시 • 평가결과 게시 Data Mining Laboratory
강의 평가 • 중간고사: 40% • 기말고사: 40% • 과제: 15% • 주요 자료구조 구현: list, stack, queue, hashing 등 • 기말 프로젝트: 다수의 자료구조의 융합 • 출석 및 Quiz: 5% • Quiz: 3~4회 실시 Data Mining Laboratory
기말 프로젝트 • 다수의 자료구조를 융합하여 데이터 처리, 관리 • 예) Hashing + linked list + sorting • 예) Graph + linked list + sorting • 예) Stack (Queue) + linked list + sorting • 프로젝트 내용은, • 중간고사 이후 공고 Data Mining Laboratory