首页 课程主页
课程分享  
数据结构与算法
主讲教师 陈黎黎/宿州学院
学习人数 1639
开课周期 2021年03月13日 ~ 2021年05月13日
教学进度
预报名
进行中
已结课
课程期次 共 9 周
  • 课程详情
  • 教辅教材
  • 课程评价
  • 常见问题

    要想有效地运用计算机来解决实际问题,必须学习和掌握好数据结构方面的有关知识。瑞士著名计算机科学家尼古拉斯·沃斯(Niklaus Wirth)教授在《数据结构+算法=程序》一书中指出,程序是由算法和数据结构组成的,程序设计的本质是对要处理的问题选择好的数据结构,同时在此结构上施加一种好的算法,而且好的算法很大程度上取决于描述实际问题的数据结构。

    本课程主要介绍线性表、栈、队列、串、数组、广义表、树、二叉树、图等常用的基本数据结构、存储结构和运算与实现等。另外还将介绍软件设计中常用的几种查找和排序算法。在介绍各项内容的同时,还涉及到算法设计与分析的基本技术等内容。

   

课程概述

 通过本课程的学习,使学生掌握数据的组织、存储和运算的基本原理和方法,培养学生进行数据结构的算法设计及分析问题的能力,使学生能够编写出正确、清晰、质量较高的程序,也为学生学习后继课程,如操作系统、编译原理、数据库系统、软件工程、人工智能等打下良好的基础。

课程大纲
  • 教学大纲
  • 实验大纲
  • CodeBlocks的安装和使用
  • 绪论
    • 1.1数据结构概述
    • 1.2 数据结构的研究内容
    • 1.3 算法描述与分析
  • 第1章 测试
  • 线性表
    • 2.1 线性表及其逻辑结构
    • 2.2 线性表的顺序表示和实现
    • 2.3 顺序表的算法设计
    • 2.4 线性表的链式表示和实现(上)
    • 2.5 线性表的链式表示和实现(下)
    • 2.6 单链表的算法设计
    • 2.7 线性表的链式表示和实现(双链表)
    • 2.8 循环链表和静态链表
  • 第2章 测试
  • 栈和队列
    • 3.1 栈的定义和顺序表示
    • 3.2 栈的链式表示与栈的应用
    • 3.3 队列的定义和顺序队
    • 3.4 环形队列的基本运算
    • 3.5 队列的链式表示与应用
  • 第3章 测试
    • 4.1 串的定义和存储结构
    • 4.2 串的模式匹配
  • 第4章 测试
  • 数组和广义表
    • 5.1 数组
    • 5.2 稀疏矩阵的三元组表
    • 5.3 稀疏矩阵的十字链表
    • 5.4 广义表
  • 第5章 测试
  • 树和二叉树
    • 6.1 树的概念和性质
    • 6.2 树的运算和存储结构
    • 6.3 二叉树的概念和性质
    • 6.4 二叉树的存储结构
    • 6.5 二叉树的基本运算
    • 6.6 二叉树的遍历(上)
    • 6.7 二叉树的遍历(下)
    • 6.8 二叉树的构造
    • 6.9 线索二叉树
    • 6.10 树、森林与二叉树
    • 6.11 哈夫曼树
  • 第6章 测试
    • 7.1 图的基本概念
    • 7.2 图的存储结构
    • 7.3 图的基本运算
    • 7.4 图的遍历
    • 7.5 生成树和最小生成树
    • 7.6 最短路径和Dijkstra算法
    • 7.7 最短路径的Floyd算法
    • 7.8 AOV网与拓扑排序
    • 7.9 AOE网与关键路径
  • 第7章 测试
  • 查找
    • 8.1 线性表的查找
    • 8.2 树表的查找
    • 8.3 哈希表的查找
  • 第8章 测试
  • 内排序
    • 9.1 排序和插入排序
    • 9.2 交换排序
    • 9.3 选择排序
    • 9.4 归并排序和基数排序
  • 第9章 测试
授课目标
预备知识
配套教材
  • 数据结构教程
    李春葆
    清华大学出版社
参考教材
  • 数据结构
    严蔚敏
    人民邮电出版社
0.0

0 条评价

本次开课 查看全部
5.0

1 条评价

本次开课 查看全部
1 这门课程是免费学习的吗?
本课程是开设在安徽省网络课程学习中心(e会学)平台上的课程,是免费学习的。
授课教师
宿州学院
2024 e会学 皖ICP备05002528号-14 皖公网安备 34010402700145号 Copyright 安徽省网络课程学习中心版权所有