摘要: 本章介绍的几个排序算法,都是时间复杂度的意义上,性能上超越了一般排序算法的O(n2) O(n2)复杂度的算法:冒泡排序(属于交换排序),简单选择排序,简单插入排序。 散列技术时曾学习:桶排序,计数排序,基数排序;非比较类排序,性能优异。 堆数据结构时曾学习:堆排序,O(NlogN)。 十大算法介绍及 阅读全文
posted @ 2020-02-20 16:31 sanlangHit 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 1,串的相关定义: 串相等,子串,前缀,后缀,空串 2,串的ADT 3,串匹配问题及需求,及算法评测 4,蛮力算法(BF算法) 以字符为单位滑动,逐个比对; 版本一: 效率:最坏,O(n x m) 5,KMP算法 思路: 蛮力算法的改进,构造查询表,使算法具备一定的记忆力和预知力; 比对时,可基于已 阅读全文
posted @ 2020-02-09 17:37 sanlangHit 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 1, 需求:根据优先级而不是数据进来的次序进行处理。 2, 优先级队列接口: 3,几种可能的实现: 基于向量/有序向量:部分接口效率有待改进。 基于列表/有序列表:部分接口效率有待改进。 基于BBST:三个接口均可O(logN)复杂度。 但BBST过于强大了,需要查找极值元;不需要维护全序关系,只需 阅读全文
posted @ 2020-02-04 10:12 sanlangHit 阅读(116) 评论(0) 推荐(0) 编辑
摘要: Chapter 1- Introduction 计算机视觉概述 Chapter2 Image Classification Pipeline 1, KNN for image classification. 阅读全文
posted @ 2020-01-27 06:55 sanlangHit 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 1, 词典:散列原理 寻值访问 两项基本任务: 2,散列函数 散列函数的设计原则与评价标准:确定,快速,满射,均匀。 散列函数种类: 除余法:表长需取做素数。 MAD法(Multiply-Add-Divide Method) 平方取中法:取key2中间的若干位,构成地址。 折叠法 伪随机数法 多项式 阅读全文
posted @ 2020-01-26 00:20 sanlangHit 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 1, Splay Tree Splay Tree 定义:在一颗BBST中,某节点被访问,则随后将其移送至根节点。 数据局部性 逐层伸展 vs.双层伸展 精髓在于双层伸展(可减弱最坏情况的影响) 算法实现: 重点包含了Splay,search,insert,remove四种操作。 Splay算法 四种 阅读全文
posted @ 2020-01-17 22:50 sanlangHit 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 1, 二叉搜索树概述 对于Sorted Vector的借鉴尤为关键; 平衡二叉搜索树(BBST)最能体现其强大功能! 定义: 结点含键值,且所有结点都满足“左孩子比父节点小,右孩子比父节点大”的二叉树。 性质: 若任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 任意节点的右子树不 阅读全文
posted @ 2020-01-05 17:36 sanlangHit 阅读(687) 评论(0) 推荐(0) 编辑
摘要: 1,图的基本概念 由节点和边组成;序列表(向量,链表,树,等)都可以看作是图的特例。 邻接,关联 有向图(有向边),无向图(无向边),混合图 路径,环路,有向无环图(DAG) 2,Graph模板类 3, 邻接矩阵与关联矩阵 关联矩阵:顶点x边; 邻接矩阵:顶点x顶点; 4,基于邻接矩阵,实现Grap 阅读全文
posted @ 2019-12-30 09:31 sanlangHit 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 1, 树:兼顾动态操作与静态操作;可以认为是list<list>,半线性结构。基本概念: 树的深度:每个节点到根的唯一通路所经过的边的数目,称作该节点的深度。 树的高度:所有节点深度的最大值称作该树的高度;任一节点对应子树的高度,称作该节点的高度。 节点的度数:节点v的孩子的总数,称作其度数。无孩子 阅读全文
posted @ 2019-12-19 22:16 sanlangHit 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 第四章 栈与队列 1, 栈:线性序列,由向量/列表派生 相比于向量和列表,增加了约束:只能访问栈顶元素;只能对栈顶元素增减,且LILO。 五个主要操作:push(), pop(), top(), empty(), size(). 实现: 栈的应用: 逆序输出,如进制转换: 递归嵌套,如: 括号匹配 阅读全文
posted @ 2019-12-16 23:12 sanlangHit 阅读(137) 评论(0) 推荐(0) 编辑