![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pat
Shirley_RL
Stay hungry Stay foolish
展开
-
pat_1040
对于输入的字符串,复制一个它的反串,求它们最大的公共子串#include #include #include using namespace std; char str[1003]; char s2[1003]; int dp[1005][1005]; int main() { while( gets(str)) { int n=strlen(str);原创 2013-08-30 15:33:59 · 599 阅读 · 0 评论 -
pat_1023
输入使用字符串,直接使用哈希数组 #include #include #include using namespace std; char num[25]; char num2[25]; int hash1[10]; int main(){ int i,j; scanf("%s",num); memset(hash1,0,sizeof(hash1)); int原创 2013-08-28 21:24:26 · 444 阅读 · 0 评论 -
pat_1028
#include #include #include using namespace std; struct student{ int id; char name[10]; int grade; }student[100008]; bool cmp1(struct student x,struct student y) { return y.id>x.id; } bool原创 2013-08-30 16:39:03 · 445 阅读 · 0 评论 -
pat_1051
模拟栈。。。栈有最大容量 #include using namespace std; int num[1000]; int stack[1000]; int dfs(int n,int m){ int i=0,k=1; int top=-1; while(1) { if(top>-1&&stack[top]==num[i]) { top--;//出站 i++原创 2013-08-29 15:35:14 · 569 阅读 · 0 评论 -
pat 1024
本来想用strrev 函数的。。。可是发现不能用,想偷懒,结果却更麻烦#include #include #include using namespace std; char num[1000]; int main() { int f; int flag=1; scanf("%s %d",num,&f); int k,j; for(int i=1;i<=f;原创 2013-08-29 14:50:41 · 628 阅读 · 0 评论 -
pat_1041
hash #include #include using namespace std; int num[10000]; int b[100000]; int main(){ int n,i,j=0; scanf("%d",&n); memset(num,0,sizeof(num)); int dt,m; for( i=0;i<n;i++) {原创 2013-08-28 21:31:45 · 553 阅读 · 0 评论 -
pat 1029
归并排序#include using namespace std; int a[1000001]; int b[1000001]; int main(){ int n,m,i; scanf("%d",&n); for(i=0;i<n;i++) { int t; scanf("%d",&t); a[i]=t; } scanf("%d",&m); for(原创 2013-08-29 11:23:00 · 532 阅读 · 0 评论 -
pat_1030
用Dijkstra 加以修改 #include #include #define INF 0x7fffffff using namespace std; int map[503][503]; int cost[503][503]; int mincost[503]; int pre[503]; int dist[503]; int m; void init1(int n) { int原创 2013-09-04 16:58:34 · 533 阅读 · 0 评论 -
二叉搜索 二叉完全 AVL
二叉搜索树: 二叉搜索树左子节点的值小于父节点,右子节点的值大于父节点 中序遍历的结果就是数组排序的结果 二叉完全树: 满足 节点i的左子节点为2*i+1 右子节点为2*i+2(如果左右都存在的话) 可以用数组存储,数组下标满足上述条件Order(root->left) Order(root) Order(root-right)借助stack,层次遍历 记得LeetCode 上之前也原创 2016-03-27 22:32:49 · 354 阅读 · 0 评论