1 / 17

Efficient Data Structures for Optimal Time and Space Complexity

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.

kaitlint
Download Presentation

Efficient Data Structures for Optimal Time and Space Complexity

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 자료구조Data Structures 2015년 2학기 2015. 9. 김한준

  2. 자료구조 시간 효율성 및 공간(메모리) 효율성을 높이기 위한 데이터의 구조는 ? 예) Big Data를 표현하기 위한 구조 Stack Graph Queue

  3. 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

  4. Data Structures Efficient data structures Efficient algorithms Good quality software  Data Mining Laboratory

  5. Data Structures • Efficient ? • Space complexity • Time complexity  Data Mining Laboratory

  6. 강의 내용 주요 자료구조 • Arrays • Stacks • Queues • Linked List • Tree • Graph • Sorting • Hashing  Data Mining Laboratory

  7. Stacks • LIFO (Last-in First-out) • push/pop operations • Applications • Calculators • Backtracking • Solving maze problems  Data Mining Laboratory

  8. Queues • FIFO (First-In First-Out) • add/delete operations • Applications • service/job scheduling  Data Mining Laboratory

  9. Trees • Hierarchical tree structure with a set of linked nodes • binary trees • binary search trees • threaded binary trees • heap • selection trees  Data Mining Laboratory

  10. Graphs • A finite set of ordered pairs of edges and vertices • Applications • path finding • social network mining  Data Mining Laboratory

  11. Sorting • 종류 • Selection sorting • Insertion sorting • Bubble sorting • Quick sorting • Heap sorting • Merge sorting • Radix sorting • …  Data Mining Laboratory

  12. Hashing Hash Tables • Using a hash function to map key values to their associated values  Data Mining Laboratory

  13. 자료구조 관련 사이트

  14. 강의 교재 • Textbook • C언어로 쉽게 풀어 쓴 자료구조 • 저자: 천인국외 2인 • 출판사: 생능출판사 • 출판년도: 2014년 • 강의 시간에 필수 지참  Data Mining Laboratory

  15. 강의 정보 • 강의 홈페이지 • http://datamining.uos.ac.kr/=> “자료구조” 클릭 • 강의일정 관련정보 게시 • 평가결과 게시  Data Mining Laboratory

  16. 강의 평가 • 중간고사: 40% • 기말고사: 40% • 과제: 15% • 주요 자료구조 구현: list, stack, queue, hashing 등 • 기말 프로젝트: 다수의 자료구조의 융합 • 출석 및 Quiz: 5% • Quiz: 3~4회 실시  Data Mining Laboratory

  17. 기말 프로젝트 • 다수의 자료구조를 융합하여 데이터 처리, 관리 • 예) Hashing + linked list + sorting • 예) Graph + linked list + sorting • 예) Stack (Queue) + linked list + sorting • 프로젝트 내용은, • 중간고사 이후 공고  Data Mining Laboratory

More Related