Data Structures and Algorithms (I)

  • 0.0
Approx. 26 hours to complete

Course Summary

This course will cover fundamental data structures and algorithms concepts in computer science. Students will learn how to analyze the running time of algorithms, implement data structures like arrays, linked lists, and trees, and solve algorithmic problems using dynamic programming and greedy algorithms.

Key Learning Points

  • Learn how to analyze the efficiency of algorithms using big-O notation
  • Gain hands-on experience implementing common data structures like arrays and linked lists
  • Apply dynamic programming and greedy algorithms to solve algorithmic problems

Job Positions & Salaries of people who have taken this course might have

    • USA: $85,000 - $125,000
    • India: ₹5,00,000 - ₹15,00,000
    • Spain: €30,000 - €50,000
    • USA: $85,000 - $125,000
    • India: ₹5,00,000 - ₹15,00,000
    • Spain: €30,000 - €50,000

    • USA: $100,000 - $150,000
    • India: ₹6,00,000 - ₹20,00,000
    • Spain: €35,000 - €60,000
    • USA: $85,000 - $125,000
    • India: ₹5,00,000 - ₹15,00,000
    • Spain: €30,000 - €50,000

    • USA: $100,000 - $150,000
    • India: ₹6,00,000 - ₹20,00,000
    • Spain: €35,000 - €60,000

    • USA: $75,000 - $110,000
    • India: ₹4,50,000 - ₹12,00,000
    • Spain: €25,000 - €45,000

Related Topics for further study


Learning Outcomes

  • Understand the fundamentals of data structures and algorithms
  • Be able to design and analyze efficient algorithms
  • Acquire hands-on experience implementing data structures and solving problems

Prerequisites or good to have knowledge before taking this course

  • Basic programming knowledge in a language like Java, Python, or C++
  • Familiarity with mathematical concepts like logarithms and exponents

Course Difficulty Level

Intermediate

Course Format

  • Online and self-paced
  • Video lectures and quizzes

Similar Courses

  • Algorithms, Part I
  • Data Structures and Algorithms Specialization
  • Introduction to Algorithms and Data Structures in C++

Related Education Paths


Related Books

Description

By learning this course, you will get a comprehensive grasp of vector and list and the ability to use them in solving real problems. By the end of this course, you will be able to evaluate data structures and algorithms in terms of asymptotic complexity, analyze storage/time complexity of iterative/recursive algorithms, implement

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

  • 第零章
  • 写在选课之前
  • 考核方式
  • 课程教材与讲义
  • 关于讨论区
  • 微信平台
  • 第一章 绪论(上)
  • 01-A-1:计算
  • 01-A-2:绳索计算机
  • 01-A-3:尺规计算机
  • 01-A-4:算法
  • 01-A-5:有穷性
  • 01-A-6:好算法
  • 01-B-1:性能测度
  • 01-B-2:问题规模
  • 01-B-3:最坏情况
  • 01-B-4:理想模型
  • 01-B-5:图灵机
  • 01-B-6:图灵机实例
  • 01-B-7:RAM模型
  • 01-B-8:RAM实例
  • 01-C-1:主流长远
  • 01-C-2:大O记号
  • 01-C-3:高效解
  • 01-C-4:有效解
  • 01-C-5:难解
  • 01-C-6:2-Subset
  • 01-C-7:增长速度
  • 有穷性 QUIZ
  • 好算法 QUIZ
  • 图灵机 QUIZ
  • RAM模型 QUIZ
  • 大O记号 QUIZ
  • 第一章 绪论(下)
  • 01-D-1:算法分析
  • 01-D-2:级数
  • 01-D-3:循环
  • 01-D-4:实例:非极端元素+起泡排序
  • 01-D-5:正确性的证明
  • 01-D-6:封底估算-1
  • 01-D-7:封底估算-2
  • 01-E-1:迭代与递归
  • 01-E-2:减而治之
  • 01-E-3:递归跟踪
  • 01-E-4:递推方程
  • 01-E-5:数组倒置
  • 01-E-6:分而治之
  • 01-E-7:二分递归:数组求和
  • 01-E-8:二分递归:Max2
  • 01-E-9:Max2:二分递归
  • 01-XC-1:动态规划
  • 01-XC-2:Fib():递推方程
  • 01-XC-3:Fib():封底估算
  • 01-XC-4:Fib():递归跟踪
  • 01-XC-5:Fib():迭代
  • 01-XC-6:最长公共子序列
  • 01-XC-7:LCS:递归
  • 01-XC-8:LCS:理解
  • 01-XC-9:LCS:复杂度
  • 01-XC-A:LCS:动态规划
  • 级数 QUIZ
  • 循环 QUIZ
  • 正确性的证明 QUIZ
  • 减而治之 QUIZ
  • 递归跟踪 QUIZ
  • 数组倒置 QUIZ
  • 分而治之 QUIZ
  • 动态规划 QUIZ
  • Fib():递推方程 QUIZ
  • Fib():封底估算 QUIZ
  • Fib():递归跟踪 QUIZ
  • Fib():迭代 QUIZ
  • 最长公共子序列 QUIZ
  • LCS:递归 QUIZ
  • LCS:理解 QUIZ
  • LCS:动态规划 QUIZ
  • Θ记号
  • 迭代的复杂度
  • 递归的复杂度
  • 起泡排序
  • 第二章 向量(上)
  • 02-A-1:接口与实现
  • 02-A-2:向量ADT
  • 02-A-3:接口操作实例
  • 02-A-4:构造与析构
  • 02-A-5:复制
  • 02-B-1:可扩充向量
  • 02-B-2:动态空间管理
  • 02-B-3:递增式扩容
  • 02-B-4:加倍式扩容
  • 02-B-5:分摊复杂度
  • 02-C-1:概述
  • 02-C-2:循秩访问
  • 02-C-3:插入
  • 02-C-4:区间删除
  • 02-C-5:单元素删除
  • 02-C-6:查找
  • 02-C-7:唯一化
  • 02-C-8:遍历
  • 02-D1-1:有序性
  • 02-D1-2:唯一化(低效版)
  • 02-D1-3:复杂度(低效版)
  • 02-D1-4:唯一化(高效版)
  • 02-D1-5:实例与分析(高效版)
  • 02-D2-1:概述
  • 02-D2-2:接口
  • 02-D2-3:语义
  • 02-D2-4:原理
  • 02-D2-5:实现
  • 02-D2-6:实例
  • 02-D2-7:查找长度
  • 接口与实现 QUIZ
  • 接口操作实例 QUIZ
  • 复制 QUIZ
  • 可扩充向量 QUIZ
  • 动态空间管理 QUIZ
  • 递增式扩容 QUIZ
  • 加倍式扩容 QUIZ
  • 分摊复杂度 QUIZ
  • 循秩访问 QUIZ
  • 插入 QUIZ
  • 区间删除 QUIZ
  • 唯一化 QUIZ
  • 遍历 QUIZ
  • 有序性 QUIZ
  • 唯一化(低效版) QUIZ
  • 复杂度(低效版) QUIZ
  • 唯一化(高效版) QUIZ
  • 实例与分析(高效版) QUIZ
  • 接口 QUIZ
  • 语义 QUIZ
  • 原理 QUIZ
  • 实现 QUIZ
  • 实例 QUIZ
  • 查找长度 QUIZ
  • 第二章 向量(下)
  • 02-D3-1:构思
  • 02-D3-2:实现
  • 02-D3-3:实例
  • 02-D3-4:最优性
  • 02-D4-1:构思
  • 02-D4-2:版本B
  • 02-D4-3:语义
  • 02-D4-4:版本C
  • 02-D4-5:正确性
  • 02-D5-1:原理
  • 02-D5-2:实例
  • 02-D5-3:性能分析
  • 02-D5-4:字宽折半
  • 02-D5-5:综合对比
  • 02-E-1:构思
  • 02-E-2:改进
  • 02-E-3:反例
  • 02-E-4:再改进
  • 02-E-5:综合评价
  • 02-F-1:归并排序:构思
  • 02-F-2:归并排序:主算法
  • 02-F-3:二路归并:实例
  • 02-F-4:二路归并:实现
  • 02-F-5:二路归并:正确性
  • 02-F-6:归并排序:性能分析
  • 构思 QUIZ
  • 实现 QUIZ
  • 实例 QUIZ
  • 版本B QUIZ
  • 语义 QUIZ
  • 版本C QUIZ
  • 正确性 QUIZ
  • 实例 QUIZ
  • 性能分析 QUIZ
  • 构思 QUIZ
  • 改进 QUIZ
  • 综合评价 QUIZ
  • 归并排序:构思 QUIZ
  • 二路归并:实例 QUIZ
  • 归并排序:性能分析 QUIZ
  • 向量的接口与实现
  • 二分查找
  • 斐波那契查找
  • 归并排序
  • 起泡排序
  • 第三章 列表
  • 03-A-1:从静态到动态
  • 03-A-2:从向量到列表
  • 03-A-3:从秩到位置
  • 03-A-4:实现
  • 03-B-1:循秩访问
  • 03-B-2:查找
  • 03-B-3:插入与复制
  • 03-B-4:删除和析构
  • 03-B-5:唯一化
  • 03-C-1:唯一化·构思
  • 03-C-2:唯一化·实现
  • 03-C-3:查找
  • 03-D-1:构思
  • 03-D-2:实例
  • 03-D-3:实现
  • 03-D-4:推敲
  • 03-D-5:selectMax()
  • 03-D-6:性能
  • 03-E-1:经验
  • 03-E-2:构思
  • 03-E-3:对比
  • 03-E-4:实例
  • 03-E-5:实现
  • 03-E-6:性能分析
  • 03-E-7:平均性能
  • 03-E-8:逆序对
  • 03-XD:习题辅导:LightHouse
  • 从秩到位置 QUIZ
  • 实现 QUIZ
  • 循秩访问 QUIZ
  • 插入与复制 QUIZ
  • 唯一化·构思 QUIZ
  • 查找 QUIZ
  • 实例 QUIZ
  • selectMax() QUIZ
  • 性能 QUIZ
  • 对比 QUIZ
  • 实例 QUIZ
  • 平均性能 QUIZ
  • 逆序对 QUIZ
  • 列表的接口与实现
  • 选择排序
  • 插入排序
  • 编程作业

Summary of User Reviews

The Data Structures and Algorithms course on Coursera is highly rated and praised by users for its comprehensive coverage of key concepts. Many users found the course to be engaging and challenging, providing a great learning experience.

Key Aspect Users Liked About This Course

comprehensive coverage of key concepts

Pros from User Reviews

  • In-depth coverage of data structures and algorithms
  • Challenging assignments that help reinforce learning
  • Taught by experienced and knowledgeable instructors
  • Great resource for both beginners and experienced programmers
  • Flexible schedule allows for self-paced learning

Cons from User Reviews

  • Some users found the course to be too difficult
  • Course materials can be dense and difficult to follow at times
  • Not enough emphasis on practical application of concepts
  • Course can be time-consuming, requiring a significant commitment
  • Course structure may not be suitable for all learning styles
Chinese (Simplified)
Available now
Approx. 26 hours to complete
Junhui DENG
Tsinghua University
Coursera

Instructor

Share
Saved Course list
Cancel
Get Course Update
Computer Courses