- 博客(6)
- 收藏
- 关注
原创 最大子序列和
前提:输出不得为空数组。 一、分治法(O(nlgn)) int findmaxcrosssubarray(int* a,int low,int mid,int high) { int leftsum =-10000,rightsum=-10000; int sum=0; int i,j; int maxleft,maxright; for(i=mid;...
2018-09-25 19:04:40 104
原创 归并排序
#include <cstdio> #include <cstdlib> using namespace std; int num[10]={2,1,33,4,56,76,32,79,0,561}; void merge(int* num,int p,int q,int r) { int n1,n2; n1=q-p+1; n2=r-q; ...
2018-09-24 16:29:11 103
原创 HD1004
#include<stdio.h> #include<iostream> #include<map> #include<string> using namespace std; int main() { int n; while (scanf("%d", &n) != EOF) { map<string, int> b..
2018-07-26 09:14:47 195
原创 HD1097
二分求幂实现(数组最简单) #include<stdio.h> int main() { int a, b, ans; while (scanf("%d%d", &a, &b) != EOF) { ans = 1; while (b) { if (b % 2) { ans *= a; ans %= 10; } ...
2018-07-25 18:02:19 102
原创 HD1002
大数运算,由于只实现加法,故未使用大数结构体。 #include<stdio.h> #include<string.h> int main() { int t, i = 1, lena, lenb; char a[1010], b[1010], c[1010]; c[1009] = '\0'; scanf("%d", &t); for (; i <...
2018-07-25 16:49:08 232
转载 Manacher 算法
最长回文子串O(n^2)算法存在的缺陷。1) 由于回文串长度的奇偶性造成了不同性质的对称轴位置,解法2要对两种情况分别处理;2) 很多子串被重复多次访问,造成较差的时间效率。缺陷2)可以通过这个直观的小?体现:char: a b a b a i : 0 1 2 3 4当i==1,和i==2时,左边的子串aba分别被遍历了一次。如果我们能改善解法2的不足,就很有希望能提高算法的效率。Manach...
2018-05-18 23:31:04 120
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人