Data Structures and Algorithms (IV)

  • 0.0
Approx. 25 hours to complete

Course Summary

This course is a comprehensive guide to data structures and algorithms, covering the most commonly used data structures and algorithms in computer science. You will learn how to design, analyze, and implement algorithms and data structures using both high-level programming languages and assembly language.

Key Learning Points

  • Learn the most commonly used data structures and algorithms in computer science
  • Design, analyze, and implement algorithms and data structures using both high-level programming languages and assembly language
  • Gain a deeper understanding of fundamental computer science concepts

Related Topics for further study


Learning Outcomes

  • Design and implement data structures and algorithms
  • Analyze algorithms for time and space complexity
  • Apply computer science concepts to solve real-world problems

Prerequisites or good to have knowledge before taking this course

  • Basic knowledge of programming
  • Familiarity with a high-level programming language (such as Python, C++, or Java)

Course Difficulty Level

Intermediate

Course Format

  • Online
  • Self-paced
  • Video lectures
  • Assignments
  • Quizzes

Similar Courses

  • Algorithms, Part I
  • Data Structures and Algorithms Specialization
  • Algorithms, Part II

Related Education Paths


Related Books

Description

By learning this course, you will get a comprehensive grasp of Priority Queues and string match techniques, as well as their applications. By the end of this course, you will be able to understand/implement Bucketsort, Counting-sort, and Radixsort, understand the principle/implementation/application of different Priority Queues such as complete binary heap and leftist heap, understand and implement Heapsort, understand and implement typical string matching algorithms such as KMP, BM, and Karp-Rabin, implement and analyze advanced selection/sorting algorithms such as Quicksort, QuickSelect, LinearSelect, and Shellsort.

Knowledge

  • Algorithms used to solve complex problems
  • Principles and methods in the design and implementation of various data structures
  • Skills for algorithm design and performance analysis
  • Background on fundamental data structures and recent results

Outline

  • 第零章
  • 写在选课之前
  • 考核方式
  • 课程教材与讲义
  • 关于讨论区
  • 微信平台
  • 第十章 优先级队列
  • 10-A1-1:应用需求
  • 10-A1-2:计算模式
  • 10-A1-3:功能接口
  • 10-A2-1:向量
  • 10-A2-2:有序向量
  • 10-A2-3:BBST
  • 10-B1-1:完全二叉树
  • 10-B1-2:结构性
  • 10-B1-3:形具神备
  • 10-B1-4:堆序性
  • 10-B2-1:上滤
  • 10-B2-2:实例
  • 10-B2-3:实现
  • 10-B2-4:效率
  • 10-B3-1:算法
  • 10-B3-2:实例
  • 10-B3-3:实现
  • 10-B3-4:效率
  • 10-B4-1:自上而下的上滤:算法
  • 10-B4-2:自上而下的上滤:效率
  • 10-B4-3:自下而上的下滤:算法
  • 10-B4-4:自下而上的下滤:实例
  • 10-B4-5:自下而上的下滤:效率
  • 10-C-1:算法
  • 10-C-2:就地
  • 10-C-3:实现
  • 10-C-4:实例
  • 10-XA1-1:第一印象
  • 10-XA1-2:堆之合并
  • 10-XA1-3:奇中求正
  • 10-XA1-4:NPL
  • 10-XA1-5:左倾性
  • 10-XA1-6:左展右敛
  • 10-XA2-1:LeftHeap模板类
  • 10-XA2-2:算法
  • 10-XA2-3:实现
  • 10-XA2-4:实例
  • 10-XA3-1:插入即是合并
  • 10-XA3-2:删除亦是合并
  • 应用需求 QUIZ
  • 功能接口 QUIZ
  • BBST QUIZ
  • 结构性 QUIZ
  • 堆序性 QUIZ
  • 上滤 QUIZ
  • 效率 QUIZ
  • 算法 QUIZ
  • 效率 QUIZ
  • 自上而下的上滤:效率 QUIZ
  • 自下而上的下滤:效率 QUIZ
  • 算法 QUIZ
  • 第一印象 QUIZ
  • 左倾性 QUIZ
  • 算法 QUIZ
  • 优先级队列ADT
  • 完全二叉堆
  • 堆排序
  • 第十一章 串(上)
  • 11-A-1:定义+特点
  • 11-A-2:术语
  • 11-A-3:ADT
  • 11-B1-1:问题与需求
  • 11-B1-2:算法测评
  • 11-B2-1:构思
  • 11-B2-2:版本一
  • 11-B2-3:版本二
  • 11-B2-4:性能
  • 11-C1-1:重复匹配的前缀
  • 11-C1-2:不变性
  • 11-C1-3:记忆力
  • 11-C1-4:预知力
  • 11-C2-1:制表备查
  • 11-C2-2:主算法
  • 11-C2-3:实例
  • 11-C3-1:快速移动
  • 11-C3-2:避免回溯
  • 11-C3-3:通配哨兵
  • 11-C4-1:递推
  • 11-C4-2:算法
  • 11-C4-3:实现
  • 11-C5-1:失之粗糙
  • 11-C5-2:精准估计
  • 11-C6-1:美中不足
  • 11-C6-2:以卵击石
  • 11-C6-3:前车之覆
  • 11-C6-4:后车之鉴
  • 11-C6-5:可视对比
  • 定义+特点 QUIZ
  • 问题与需求 QUIZ
  • 性能 QUIZ
  • 重复匹配的前缀 QUIZ
  • 制表备查 QUIZ
  • 通配哨兵 QUIZ
  • 算法 QUIZ
  • 精准估计 QUIZ
  • 第十一章 串(下)
  • 11-D1-1:不对称性
  • 11-D1-2:善待教训
  • 11-D1-3:前轻后重
  • 11-D1-4:以终为始
  • 11-D2-1:坏字符
  • 11-D2-2:特殊情况
  • 11-D3:画家策略
  • 11-D4-1:最好情况
  • 11-D4-2:最坏情况
  • 11-E1-1:兼顾经验
  • 11-E1-2:好后缀策略
  • 11-E1-3:实例体验
  • 11-E2:构造gs表
  • 11-E3-1:BM之性能
  • 11-E3-2:各算法纵览
  • 11-F1-1:化串为数
  • 11-F1-2:凡物皆数
  • 11-F1-3:串亦是数
  • 11-F2-1:数位溢出
  • 11-F2-2:散列压缩
  • 11-F2-3:应对冲突
  • 11-F2-4:指纹更新
  • 串匹配及其蛮力算法
  • KMP算法
  • 其他串匹配算法
  • 第十二章 排序
  • 12-A1-1:分而治之
  • 12-A1-2:轴点
  • 12-A1-3:构造轴点
  • 12-A1-4:单调性 + 不变性
  • 12-A1-5:实例
  • 12-A2-1:不稳定 + 就地
  • 12-A2-2:最好情况 + 最坏情况
  • 12-A2-3:平均情况
  • 12-A4-1:不变性
  • 12-A4-2:单调性
  • 12-A4-3:实现
  • 12-A4-4:实例
  • 12-A4-5:时间 + 空间 + 稳定性
  • 12-B1-1:选取 + 中位数
  • 12-B1-2:从中位数到众数
  • 12-B1-3:从频繁数到众数
  • 12-B1-4:减而治之
  • 12-B1-5:算法实现
  • 12-B3-1:尝试
  • 12-B3-2:quickSelect
  • 12-B3-3:linearSelect:算法
  • 12-B3-4:linearSelect:性能分析A
  • 12-B3-5:linearSelect:性能分析B
  • 12-B3-6:linearSelect:性能分析C
  • 12-C1-1:策略
  • 12-C1-2:实例
  • 12-C1-3:循秩访问
  • 12-C1-4:插入排序
  • 12-C1-5:Shell序列
  • 12-C2-1:邮资问题
  • 12-C2-2:定理K
  • 12-C2-3:逆序对
  • 分而治之 QUIZ
  • 平均情况 QUIZ
  • quickSelect QUIZ
  • Shell序列 QUIZ
  • 快速排序
  • 选取
  • 编程作业

Summary of User Reviews

This data structures and algorithms course received positive reviews from many users. The course covers a wide range of topics and provides valuable information to learners. Many users appreciated the interactive quizzes and practical exercises that helped them understand the concepts better.

Key Aspect Users Liked About This Course

Interactive quizzes and practical exercises

Pros from User Reviews

  • Covers a wide range of topics
  • Valuable information for learners
  • Good for beginners and advanced learners
  • Engaging and interactive quizzes
  • Great practical exercises

Cons from User Reviews

  • Some lectures are too fast-paced
  • Not enough depth in some topics
  • Some videos are too long
  • Confusing instructions in some exercises
  • Not enough support for learners who are struggling
Chinese (Simplified)
Available now
Approx. 25 hours to complete
Junhui DENG
Tsinghua University
Coursera

Instructor

Share
Saved Course list
Cancel
Get Course Update
Computer Courses