算法

动态查找-平衡二叉树

动态查找-平衡二叉树1.简介平衡二叉树(BalancedBinaryTree)具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。平衡二叉树的常用实现方法有红黑树、A……

用数组实现模拟算法C/C++实现(配例题)

用数组实现模拟算法C/C++实现(配例题)1.概念数组这个概念并不陌生,然而,数组本身也是一种数据结构。数组在存储数据时是按顺序存储的,存储数据的内存也是连续的,所以他的特点就是寻址读取数据比较容易,插入和删除比较困难。简单解释一下为什么,在……

浅谈分数规划

浅谈分数规划说到分数规划,其实这只是一个用来转换问题模型的一个套路,并没有固定的模板什么的,下面我们看看分数规划的形式和特性。分数规划(fractionalprogramming)的一般形式:对于解空间S、连续的……

什么是“并查集” ?

什么是“并查集” ?什么是“并查集”?并查集,是一种可以使用代表元来表示不相交集的数据结构,在一些只需要查询两个元素是否属于同一个集合的情况下它很有用。比如给定一个无向图,判断两个顶点是否属于同一……

动态规划概念和实例讲解

动态规划概念和实例讲解动态规划(Dynamicprogramming,简称DP)是一种在数学、管理科学、计算机科学、经济学和生物信息学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。动态规划常常适用于……

字符串匹配实例讲解

字符串匹配实例讲解本篇主要讲字符串匹配以及字符串算法中三个主要算法的一些内容,帮助大家理解。一、基本概念字符串匹配问题假设文本是一个长度为n的数组T[1…n],而模式是一个长度为m的数组P[1&helli……

C++代码浅谈迭代加深搜索

C++代码浅谈迭代加深搜索本篇简述一下迭代加深搜索,并列出了伪代码帮助大家理解。迭代加深是一种每次限制搜索深度的深度优先搜索。(1)本质:它的本质还是深度优先搜索,只不过在搜索的同时带上了一个深度d,当d达到设定的深度时就返回……

C++STL之Vector容器

C++STL之Vector容器1.概念Vector可以翻译为向量,或向量数组,至于为什么以向量命名,可以理解为一维空间也是存在向量的。Vector是最简单的序列是容器,就像数组一样,向量使用连续的存储位置作为元素,这意味着它们的元……

有向无环图图文讲解

有向无环图图文讲解一、定义边有向,无环。英文名叫DirectedAcyclicGraph,缩写是DAG。一个无环的有向图称做有向无环图。在图论中,如果一个有向图无法从某个顶点出发经过若干条边回到该点,则这个图是一个有向……