美文网首页
资料分享:送你一本《数据结构(C#语言版)》电子书!

资料分享:送你一本《数据结构(C#语言版)》电子书!

作者: 老马的程序人生 | 来源:发表于2019-03-20 11:39 被阅读0次

    对于信息类专业的学生而言,数据结构与算法是一门必修的课程。只有学好这门课程,熟练掌握线性表、栈、队列、树、图等基本结构,以及在这些结构上的各种算法,才能利用计算机去解决实际问题。

    如何学好这门课程呢,给大家提供一种思考方式 —— 「整体思维」。

    什么是整体思维呢?

    它基于两条假设:

    • 一切事物在底层上都是互相联系的;
    • 整体能提供比个体本身更多的信息;

    第一条很好理解,第二条是什么意思呢?

    举个简单的例子:你要买一件沙发,除了考虑它的材质、舒适度、耐用性、价格之外,还要考虑什么?它跟家里的风格是否搭配,对吧。

    如果你整个房子是现代简约风格,却放了一个实木红木沙发,那显然非常奇怪。

    这就是「整体性」。沙发这个个体,放进整体的语境中,就被赋予了新的信息。

    简而言之:我们永远不能孤立地考虑问题和事物,而应该不断地追问自己:

    • 它的背景和场景是什么?
    • 它为什么会出现?
    • 它的出现带来了什么、导致了什么?

    也就是把我们学习的每种结构以及每种结构的实现,跟我们已知的系统、体系,联系起来(比如我们学过的各类计算机语言、离散数学、运筹学等等),从整体的角度去学这些知识点。这样就会让各个知识点连接成知识网,逐渐形成自己的知识体系,作为武器,为我所用。


    目录

    第1章 绪论

    • 1.1 数据结构
    • <u>学习数据结构的必要性</u>
    • <u>基本概念和术语</u>
    • 1.2 算法
    • <u>算法的特性</u>
    • <u>算法的评价标准</u>
    • <u>算法的时间复杂度</u>
    • 1.3 数学预备知识
    • <u>集合</u>
    • <u>常用的数学术语</u>
    • <u>对数</u>
    • <u>递归</u>
    • 1.4 C#预备知识
    • <u>接口</u>
    • <u>泛型编程</u>
    • 本章小结
    • 习题一

    第2章 线性表

    • 2.1 线性表的逻辑结构
    • <u>线性表的定义</u>
    • <u>线性表的基本操作</u>
    • 2.2 顺序表
    • <u>顺序表的定义</u>
    • <u>顺序表的基本操作实现</u>
    • <u>顺序表应用举例</u>
    • 2.3 单链表
    • <u>单链表的定义</u>
    • <u>单链表的基本操作实现</u>
    • <u>单链表应用举例</u>
    • 2.4 其他链表
    • <u>双向链表</u>
    • <u>循环链表</u>
    • 2.5 C#中的线性表
    • 本章小结
    • 习题二

    第3章 栈和队列

    • 3.1 栈
    • <u>栈的定义及基本运算</u>
    • <u>栈的存储和运算实现</u>
    • <u>栈的应用举例</u>
    • <u>C#中的栈</u>
    • 3.2 队列
    • <u>队列的定义及基本运算</u>
    • <u>队列的存储和运算实现</u>
    • <u>队列的应用举例</u>
    • <u>C# 中的队列</u>
    • 本章小结
    • 习题三

    第4章 串和数组

    • 4.1 串
    • <u>串的基本概念</u>
    • <u>串的存储及类定义</u>
    • <u>串的基本操作的实现</u>
    • <u>C#中的串</u>
    • 4.2 数组
    • <u>数组的逻辑结构</u>
    • <u>数组的内存映象</u>
    • <u>C#中的数组</u>
    • 本章小结
    • 习题四

    第5章 树和二叉树

    • 5.1 树
    • <u>树的定义</u>
    • <u>树的相关术语</u>
    • <u>树的逻辑表示</u>
    • <u>树的基本操作</u>
    • 5.2 二叉树
    • <u>二叉树的定义</u>
    • <u>二叉树的性质</u>
    • <u>二叉树的存储结构</u>
    • <u>二叉链表存储结构的类实现</u>
    • <u>二叉树的遍历</u>
    • 5.3 树与森林
    • <u>树、森林与二叉树的转换</u>
    • <u>树和森林的遍历</u>
    • 5.4 哈夫曼树
    • <u>哈夫曼树的基本概念</u>
    • <u>哈夫曼树类的实现</u>
    • <u>哈夫曼编码</u>
    • 5.5 应用举例
    • 5.6 C#中的树
    • 本章小结
    • 习题五

    第6章 图

    • 6.1 图的基本概念
    • <u>图的定义</u>
    • <u>图的基本术语</u>
    • <u>图的基本操作</u>
    • 6.2 图的存储结构
    • <u>邻接矩阵</u>
    • <u>邻接表</u>
    • 6.3 图的遍历
    • <u>深度优先遍历</u>
    • <u>广度优先遍历</u>
    • 6.4 图的应用
    • <u>最小生成树</u>
    • <u>最短路径</u>
    • <u>拓扑排序</u>
    • 本章小结
    • 习题六

    第7章 排序

    • 7.1 基本概念
    • 7.2 简单排序方法
    • <u>直接插入排序</u>
    • <u>冒泡排序</u>
    • <u>简单选择排序</u>
    • 7.3 快速排序
    • 7.4 堆排序
    • 7.5 归并排序
    • 7.6 基数排序
    • <u>多关键码排序</u>
    • <u>链式基数排序</u>
    • 7.7 各种排序方法的比较与讨论
    • 7.8 C#中排序方法
    • 本章小结
    • 习题七

    第8章 查找

    • 8.1 基本概念和术语
    • 8.2 静态查找表
    • <u>顺序查找</u>
    • <u>有序表的折半查找</u>
    • <u>索引查找</u>
    • 8.3 动态查找表
    • 8.4 哈希表
    • <u>哈希表的基本概念</u>
    • <u>常用的哈希函数构造方法</u>
    • <u>处理冲突的方法</u>
    • 8.5 C#中的查找方法
    • 本章小结
    • 习题八

    参考文献


    推荐阅读


    下载《数据结构(C#语言版)》

    关注公众号,后台回复

    20190320

    相关文章

      网友评论

          本文标题:资料分享:送你一本《数据结构(C#语言版)》电子书!

          本文链接:https://www.haomeiwen.com/subject/owkzmqtx.html