算法
C++代码浅谈迭代加深搜索
C++代码浅谈迭代加深搜索本篇简述一下迭代加深搜索,并列出了伪代码帮助大家理解。迭代加深是一种每次限制搜索深度的深度优先搜索。(1)本质:它的本质还是深度优先搜索,只不过在搜索的同时带上了一个深度d,当d达到设定的深度时就返回……
DFS(深度优先搜索)算法讲解(附模板及习题)
DFS(深度优先搜索)算法讲解(附模板及习题)1.DFS简介        深度优先搜索算法(英语:D……
插头DP图文实例讲解
插头DP图文实例讲解本篇通过图文解析讲述插头DP的内容,结合前面的状态压缩DP知识,以及前置知识:哈希,方便大家能快速理解。在阐述什么是插头DP之前,我们先了解插头DP有什么用?插头DP是用来解决一类网格图上的连通性问题……
什么是Manacher算法?
什么是Manacher算法?本篇讲解manacher算法,大家在学习之前,提前了解一下两个字符串相算法——kmp和拓展kmp,这些算法都是字符串算法。相对于前面介绍的两个算法,Manacher算法的应用范……
插入排序算法C/C++代码图文讲解
插入排序算法C/C++代码图文讲解插入排序的代码实现虽然没有冒泡排序和选择排序那么简单粗暴,但它的原理应该是最容易理解的了,因为只要打过扑克牌的人都应该能够秒懂。插入排序是一种最简单直观的排序算法,它的工作原理是通过构建有序序列,对于……
贪心算法的基本思想与实例讲解
贪心算法的基本思想与实例讲解贪心算法是什么?并不是字面上贪心的意思,而且选出目前最好的结果,这块有个误区,并不从整体最优考虑,它所作出的选择只是在某种意义上的局部最优选择。虽然贪心算法不能对所有问题都能得到最优的结果,但对许多问……