摘要: 举例来说,有一个字符串”BBC ABCDAB ABCDABCDABDE”,我想知道,里面是否包含另一个字符串”ABCDABD”?1、字符串”BBC ABCDAB ABCDABCDABDE”的第一个字符与搜索词”ABCDABD”的第一个字符,进行比较。因为B与A不匹配,所以搜索词后移一位。2、因为B与... 阅读全文
posted @ 2014-10-23 09:52 NYNU_ACM 阅读(381) 评论(0) 推荐(0) 编辑
摘要: 首先,要了解两个概念:"前缀"和"后缀"。 "前缀"指除了最后一个字符以外,一个字符串的全部头部组合;"后缀"指除了第一个字符以外,一个字符串的全部尾部组合。如下图所示:则图中最长公共前缀后缀长度为0;下面再以”ABCDABD”为例,进行介绍:- ”A”的前缀和后缀都为空集,共有元素的长度为0;- ... 阅读全文
posted @ 2014-10-23 09:41 NYNU_ACM 阅读(14405) 评论(1) 推荐(2) 编辑
摘要: 相应代码如下:#include#include#include#includeusing namespace std ;int main() { char a[100] ; int b ; while(cin >> a >> b) { ... 阅读全文
posted @ 2014-10-23 09:31 NYNU_ACM 阅读(474) 评论(0) 推荐(0) 编辑
摘要: 理解大数相加算法之后,很容易过度到大数相乘:只需多加一层循环即可,分析如下:#include#include#include#includeusing namespace std ;int main() { char a[21] , b[21] ; while(... 阅读全文
posted @ 2014-10-23 09:27 NYNU_ACM 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 对sum数组进行处理:这样直接简化的数组的右对齐过程,思想简单,容易理解;代码如下:#include#include#include#includeusing namespace std ;int main() { char a[21] , b[21] ; wh... 阅读全文
posted @ 2014-10-23 09:22 NYNU_ACM 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 多重背包问题是指:有N种物品和一个容量为V的背包。第i种物品最多有n[i]件可用,每件体积是v[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。 /*** 多重背包:* 有N种物品和一个容量为V的背包。第i种物品最多有Mi件可用,... 阅读全文
posted @ 2014-10-23 09:12 NYNU_ACM 阅读(195) 评论(0) 推荐(0) 编辑