博客专栏  >  编程语言   >  基础数据结构与算法

基础数据结构与算法

本栏讲述的是笔者数据结构与算法的学习之路。 全文算法和数据结构大多出自《算法4》(谢路云译)和《数据结构》(严蔚敏)

关注
3 已关注
25篇博文
  • 图(4)——最短路径

    最短路径 找到从一个顶点到另一个顶点的成本最小的路径。

    2017-05-24 21:48
    70
  • 图(3)——最小生成树

    最小生成树 最小生成树:一幅加权图的最小生成树是他的一棵权值(树种所有边的权值之和)最小的生成树。 关于最小生成树的一些约定: 1)只考虑连通图 2)边的权重不一定表示距离 3)边的权重可能是0或...

    2017-05-22 20:21
    65
  • 图(1)——无向图

    无向图 术语表 图:由一组顶点个一组能够将两个顶点相连的边组成。 自环:一条连接一个顶点和其自身的边。 平行边:连接同一对顶点的两条边称为平行边。 多重图:含有平行边。 简单图:没有平行边和自环。 相...

    2017-05-17 21:16
    71
  • 图(2)——有向图

    有向图

    2017-05-20 22:13
    85
  • 基础数据结构与算法--序

    一、序幕 近日欲重学数据结构和算法,便开本篇博客做为记录整理。 本篇博客所以代码都是以《数据结构(C语言版)》(严蔚敏,吴伟民著)《算法(第4版)》([美]Robert Sedgewick Kevin...

    2017-04-24 12:50
    221
  • 线性表

    一、基本概念: 1.线性表:是N个数据元素的有限序列。 2.特点: 1)存在唯一一个被称为“第一个”的元素; 2)存在唯一一个被称为“最后一个”的元素; 3)除第一个元素外,每个元素都有唯一的...

    2017-04-24 17:58
    194
  • 线性表续——双向、循环链表

    循环链表: 首尾相连的链表,即last的后继为first。 循环链表API: template class xlist   xlist() 创建一个空链表 bool Empty() 链...

    2017-04-25 20:35
    131
  • 栈、队列与背包

    栈和队列 栈:一种基于后进先出策略的集合类型; 在链表的表示方法下,栈在同一端进出元素,所以只需要一个指针域即可。 栈API: class stack{ stack() 创建一个空栈 ...

    2017-04-29 19:46
    169
  • 排序(1)---基础排序

    基础排序 在排序算法中,我们需要计算比较和交换的数量。对于不交换元素的算法,我们会计算访问数组的次数。在排序算法中额外的内存开销和运行时间是同等重要的。 排序算法分为两类:一、除了函数调用所需要的栈和...

    2017-04-30 19:10
    90
  • 排序(2)---希尔排序

    希尔排序 希尔排序是一种基于插入排序的快速的排序算法。

    2017-05-02 21:50
    111
  • 排序(3)---归并排序

    归并排序 归并:将两个有序数组归并成为一个更大的有序数组。

    2017-05-03 21:55
    80
  • 排序(4) ---快速排序

    快速排序

    2017-05-05 09:52
    92
  • 排序(5)---堆排序

    堆排序 堆有序:二叉树的每个结点都大于等于他的两个子结点,被称为堆有序。 二叉堆:是一组能够用堆有序的完全二叉树排序的元素,并在数组中按照层级储存。

    2017-05-05 20:14
    111
  • 排序(6)---总结

    出处:todayx, 排序总结 1. 快速排序 介绍: 快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比...

    2017-05-05 22:24
    74
  • 优先队列

    优先队列 优先队列是对前面两章的补充。 一种支持:删除最大元素和插入元素的数据结构被叫做优先队列。他与队列和栈相类似,不同点在于,他的运作方式与前面所提到的二叉堆相同,或者说堆排序就是借助了优先队列的...

    2017-05-06 21:09
    169
  • 树(1)---序论

    树的基本概念 树的定义: 树是N(N>=0)个结点的有限集合,N=0时,称为空树。 非空树应满足: 1)有且仅有一个特定的称为根的结点。 2)当N>1时,其余结点可分为m(m>0)个互不相交...

    2017-05-07 16:12
    84
  • 树(2)---二叉树

    二叉树 二叉树的定义 二叉树是另一种树形结构,其特点是每个结点至多只有两棵子树,(即二叉树中不存在度大于2的结点。且,二叉树左右有序,不能颠倒。 二叉树也是递归的形式定义: 1)为空二叉树,n=0; ...

    2017-05-07 16:25
    65
  • 树(3)---树与森林

    树的存储结构 孩子兄弟法:

    2017-05-09 20:52
    135
  • 查找(1)---顺序查找

    符号表 在了解查找之前,首先我们要知道符号表,符号表有时被称为字典,也就是类似于单词的参考书。有时也被称为索引,即书本最后将术语按字母顺序列出以方便查找的那部分。 符号表主要分为键和值,键就是查找目录...

    2017-05-11 19:21
    97
  • 查找(2)---二分查找

    二分查找(基于有序数组) 二分查找的具体步骤: 1.求取数组长中间数; 2.比较查找键(key)和中间键(mid->key), 1)如果key大,则选择数组后半部分, 2)如果key小,则选择数组前半...

    2017-05-11 21:13
    74

LeetCode
32989

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部