UT-Application-Development-Association / course-wiki

https://course-wiki.uoftada.com
Apache License 2.0
2 stars 0 forks source link

CSC263H1 #67

Closed utada-wiki-bot closed 2 years ago

utada-wiki-bot commented 2 years ago

文章信息

title: CSC263H1

subtitle: Data Structures and Analysis

author: Yuxuan Liu

tags:

课程介绍

这门课介绍了计算机三驾马车之一的数据结构,主要介绍了常见的抽象数据类型(Abstract Data Type)和实现它们的数据结构(Data Structure)。教学方式通常是提出一个问题,思考解决问题的ADT和可以实现它的常见的数据结构,讲解他们的实现原理并分析complexity。学习过程中思考ADT和Data Structure作为abstract concept和具象implementation的区别会更深入地理解课程意义,有助于今后的学习。这门课的内容应用广、深度合适,实习的面试常常会被问到相关问题,coding test中也有时需要运用这些概念,所以需要认真掌握这节课的内容。

ADT是对数据的抽象,定义了数据需要实现的操作和功能;而Data Structure则是ADT的具象实现方式和算法。

会遇到的ADT包括:

  1. Priority Queue - Heap
  2. Dictionary - Balanced Tree (AVL Tree)
  3. Dictionary - Hash
  4. Disjoint Sets

同时,重要的知识点包括:

计算complexity的过程中需要少许的Statistic知识(Probability, Expectation, Combination and Permutation)。

大体课设

常驻教授

Michelle Craig

课程难度

课程中会学习很多数据结构,都需要理解和熟悉它们的goal,intuition,implementation,和complexity。实际概念的理解并不复杂,课程的难点在于运用灵活所学的知识,对目标问题进行分析,并提出一个合理的算法和Augmented Data Structure。