模式匹配 在字符串匹配问题中,我们期待察看源串 “ S串 ” 中是否含有目标串 “ 串T ” (也叫模式串)。其中 串S被称为主串,串T被称为子串。 1、如果在主串中查找到子串,则称为模式匹配成功,返回模式串的第一个字符在主串中出现的位置。 2、如果在主串中未找到子串,则称为模式匹配失败,返回-1。 ...
分类:
编程语言 时间:
2016-10-30 19:14:07
阅读次数:
387
将排列成直角三角形的数字粘贴到程序中。贪心,懒惰和占有量词本身是贪心的,贪心的量词会首先匹配整个字符串。尝试匹配时,它会选定尽可能多的内容,也就是整个输入。量词首次尝试匹配整个字符串,如果失败则回退一个字符后再尝试,这个过程叫做回溯。它每次回退一个字符,知道找到匹配内容或者没有字符尝试为止。懒惰的意 ...
分类:
其他好文 时间:
2016-10-26 19:58:22
阅读次数:
257
首先申明,本文根据微博博友 @JC向北 微博日志 整理得到,本文在这转载已经受作者授权! 1.概念 回溯算法 就是 如果这个节点不满足条件 (比如说已经被访问过了),就回到上一个节点尝试别的路径 也就是说 走到死胡同里边就往回走,直到找到出口. 回溯 是一种 选优搜索 。许多复杂规模较大的问题都可以 ...
分类:
其他好文 时间:
2016-10-25 09:28:32
阅读次数:
133
转自 雪狼的程序故事 http://www.cnblogs.com/gaoteng/archive/2012/04/11/2442692.html 经典回溯算法(八皇后问题) 今天偶尔看到了一个算法问题(八皇后问题),回想一下还是在算法课上学习过的,于是,自己总结了一下,写了这篇日志 算法提出: 在 ...
分类:
编程语言 时间:
2016-10-23 18:04:29
阅读次数:
248
树的经典问题和方法 《算法竞赛入门经典(第2版)》392页 欧拉序列。对有根树t进行dfs(深度优先遍历),无论是递归还是回溯,每次到达一个结点时都将深度记录下来,可以得到一个长度为2n-1的序列,称为t的欧拉序列f(类似于欧拉回路)。 为了方便,把结点k在欧拉序列中第一次出现的序号记为pos(k) ...
分类:
其他好文 时间:
2016-10-23 17:47:51
阅读次数:
154
回溯算法 题目整理 part1 回溯算法 题目整理 part2 1、概念 回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。 回溯法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并 ...
分类:
编程语言 时间:
2016-10-21 08:01:38
阅读次数:
217
求迷宫从入口到出口的所有路径是一个经典的程序设计问题,求解迷宫,通常采用的是“穷举+回溯”的思想,即从入口开始,顺着某一个方向出发,若能够走通,就继续往前走;若不能走通,则退回原路,换一个方向继续向前探索,直到所有的通路都探寻为止。因此本文依据这种“穷举+回溯”的思想,设计一个求解迷宫的程序。 1 ...
分类:
其他好文 时间:
2016-10-14 09:59:53
阅读次数:
282
这道题目由于每走一步的时候毛毛球是可以变换的 换言之 主体不唯一 所以这里搜索的设计有变化 再就是几个回溯的过程要注意。,。 小心使得万年船 ...
分类:
其他好文 时间:
2016-10-11 21:49:41
阅读次数:
164
题目链接:http://poj.org/problem?id=1416 题意:一段数分成好几段相加,求最大的且不大于目标值的组合。 DFS,用vector<int>tmp来记录中间结果,回溯的时候pop掉。判重用了个map,其实用一个flag打标记也可。 ...
分类:
其他好文 时间:
2016-10-09 13:17:01
阅读次数:
109