
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
接下来的几篇文章会介绍如下的内容:图的术语:顶点、边、邻接、关联、度、回路、路径、连通构件、生成树图的类型:无向图、有向图、加权图图的常用描述方法:邻接矩阵、矩阵邻接表、邻接链表图的标准搜索方法:广度优先搜索、深度优先搜索图的算法:寻找图的路径、寻找无向图的连通构件、寻找连通无向图的生成树一、顶点、边、有向边、无向边、有向图、无向图简单地说,图(Graph)是...
一、矩阵介绍一个矩m*b的矩阵是一个m行、n列的表,如下图所示:m和n是矩阵的维数矩阵与二维数组不同,矩阵的索引从1开始二、矩阵的运算矩阵最常见的操作是:矩阵转置、矩阵相加、矩阵相乘矩阵转置一个m*n的矩阵M转置之后是一个n*m的矩阵,它们的关系是:矩阵相加两个矩阵仅当维数相同(行数、列数分别相同)时才可以相加两个m*n的矩阵A和B相加之后是一个m*n...
一、前言寻找问题的解的一种可靠的方法:是首先列出所有候选解,然后逐个,在检查完所有或部分候选解之后,即可找到所需要的解理论上,只要候选解数量有限,并且在检查了所有或部分候选解之后可以确定所需解。这种方法是可行的。不过在实际应用中,很少使用这种方法, 因为候选解的数量通常都非常大(比如指数级,甚至是大数阶乘),即便采用最快的计算机,也只能对实例规模相当小的问题在合理的时间内解...
一、搜索树的复杂度分析本文考察二叉搜索树和索引二叉搜索树二叉搜索树的渐进性能可以和跳表媲美:查找、插入、删除操作所需的平均时间为Θ(logn)查找、插入、删除操作的最坏情况的时间为Θ(n)元素按升序输出时所需时间为Θ(n)虽然在最坏情况下的查找、插入、删除操作,散列表和二叉搜索树的时间性能相同,但是散列表在最好的情况下具有超级性能Θ(1)不过,对于一个指定的关键...
一、最优化问题本文及后面介绍的算法例子都是“最优化问题”。每个最优化问题都包含一组“限制条件”和一个“优化函数”。符合限制条件的问题求解方案称为“可行解”。使优化函数可能取得最佳值的可行解称为“最优解”二、贪婪算法思想在贪婪算法中,我们要逐步构造一个最优解。每一步,我们都在一定的标准下,作出一个最优决策。在每一步做出的决策,在以后的步骤中都不可更改。做出决策所依据的标准称为贪婪准则三、...
一、线性探查法散列表基础介绍与散列冲突见文章:https://blog.csdn.net/qq_41453285/article/details/103517420线性探查法的基本思想:在产生散列冲突时,将产生散列冲突的关键字向后存储当使用了线性探查法之后,整个散列表就被视为一个环形表了二、图示说明散列函数为f(k)=k%11。且散列表的当前状态如下图所示当要插入58关键字...
一、空间复杂度介绍程序的空间复杂性(space complexity)是指运行完一个程序所需要的内存大小对一个程序的空间复杂性感兴趣的主要原因如下:①如果程序将要运行在一个多用户计算机系统中,可能需要指明分配给该程序所需的内存大小②对任何一个计算机系统,都想要知道是否有足够可用的内存来运行该程序③一个问题可能有若干个内存需求各不相同的解决方案。比如,对于你的计算机来说,某 个C...
一、映射概述一个映射,也称为关联数组是一个由唯一键组成的集合,而每个键必然关联一个特定的值。这种键到值的关联关系称为映射散列表散列表是实现映射的一种数据结构自平衡二叉搜索树虽然可以用散列表实现映射,但映射也可以通过自平衡二叉搜索树存储数据虽然散列表能提供更好的平均的渐进复杂度,但是二叉搜索树在最坏情况下能有更好的表现(即对数复杂性相比线型复杂性)二叉搜索树同时...