Algorithm
咿呀咿呀咿呀哟
这个作者很懒,什么都没留下…
展开
-
全排列
一般把1-n这n个整数按照按某个顺序摆放的结果称为这n个整数的一个排列,而全排列指这n个整数能形成的所有排列。例如对1、2、3这三个整数来说,(1,2,3)、(1,3,2)、(2,1,3)、(2,3,1)、(3,1,2)、(3,2,1)就是1-3的全排列。问题:输出1-n这n个整数的全排列public class Main{ public static int maxn = ...原创 2020-02-22 17:18:04 · 147 阅读 · 0 评论 -
模式匹配---KMP算法
如有错误,敬请指出,谢谢~1.概念介绍 前缀 后缀 公共前后缀 最长公共前后缀2.next数组 ...原创 2019-11-18 01:04:10 · 509 阅读 · 0 评论 -
字符串匹配问题
朴素字符匹配(也称暴力匹配)主串S: A B A B A B C模式串M: A B Ci=0, j = 0;//初始化,从第一个字符比起S[0] == M[0] ; I++,J++S[1] == M[1]; I++,J++S[2] != M[2]; 此时再从模式串M第一个字符重新开始,与主串第二个字符往后一一再进行比较I = 2 – 2 + 1 ...原创 2019-11-16 19:24:39 · 225 阅读 · 0 评论 -
快速排序算法【双指针法和填空法】(c++)
快速排序:双指针法:方法是找到一个数作为基准数,(一般将第一个数作为基准数),将序列中比基准数大的放在基准数的右边,比基准数小的放在基准数的左边。怎样实现呢?既然左右都找,那就从两边进行探测,大的放右边,小的放左边,就反过来找,一个从右边找小的,一个从左边找大的。如 5 1 4 7 6 2 8 3 ,这里用两个探测器,变量 i和 j ,分别指向序列的最左边和最右边,我们将第一个数 5...原创 2019-10-15 23:08:02 · 722 阅读 · 0 评论