浙江大学数据结构(C语言)
常 乐-
这个作者很懒,什么都没留下…
展开
-
浙江大学数据结构(C语言实现)7-3 Pop Sequence (25 分)(数组模拟堆栈)
#include<stdio.h>#include<stdlib.h>#define MAXN 1005typedef struct stack *Stack;struct stack{ int Data[MAXN]; int Top;};int main(){ int N,M,K; scanf("%d %d %d",&M,&N,&K); int A[MAXN]; while(K--) { int x=1,temp=1;原创 2021-03-27 15:00:41 · 502 阅读 · 0 评论 -
(浙江大学数据结构C语言)02-线性结构1 两个有序链表序列的合并 (15 分)
List Merge(List L1,List L2){ List L=(List)malloc(sizeof(struct Node)); //int *Head=L;应该用List Head List Head=L; List L1F=L1->Next; List L2F=L2->Next; //while(L1&&L2)错误L1,L2均为头结点为空不进入while while(L1F&&L2F) { if(L1F->Data原创 2021-03-12 14:47:06 · 454 阅读 · 0 评论 -
(浙江大学数据结构C语言实现)6-10 二分查找 (20 分)
Position BinarySearch(List L,ElementType X){ int Left=1; int Right=L->Last; int Center=(Left+Right)/2; while(X!=L->Data[Center]&&Left<=Right)//傻子把!=写成了=! { if(X>L->Data[Center]) { Left=Center+1; } else Right=Center原创 2021-03-12 13:36:32 · 258 阅读 · 0 评论 -
(浙江大学数据结构C语言详解不懂可问)7-1 Maximum Subsequence Sum (25 分)
#include<stdio.h>#include<stdlib.h>void MaxSubseqSum(int A[],int N);int main(){ int N; scanf("%d",&N); int *A=(int *)malloc(sizeof(int)); int i; for(i=0;i<N;i++) { scanf("%d",&A[i]); } MaxSubseqSum(A,N); free(A); retu原创 2021-03-12 13:02:12 · 186 阅读 · 0 评论 -
(浙江大学数据结构C语言实现)7-6 列出连通集 (25 分)
#include<stdio.h>#include<stdlib.h>#define MAXN 10typedef struct GNode *PtrToG;struct GNode{ int Nv; int Ne; int a[MAXN][MAXN];};int Visited[MAXN]={0};PtrToG CreateGraph(int N,int E);void DFS(PtrToG G,int Data);void DFSShow(PtrToG原创 2021-03-10 19:06:01 · 199 阅读 · 0 评论 -
(浙江大学数据结构C语言实现)7-8 File Transfer (25 分)
#include<stdio.h>#include<stdlib.h>typedef int ElementType;typedef int SetName;typedef ElementType SetType[10001];SetName Find(SetType S,ElementType X);void Union(SetType S,SetName Root1,SetName Root2);void Input_connection(SetType S);v原创 2021-03-09 11:47:13 · 316 阅读 · 0 评论 -
(浙江大学数据结构C语言实现)7-5 堆中的路径 (25 分)
#include<stdio.h>#include<stdlib.h>int H[1001];int size;void Create();void Insert(int X);int main(){ int N,M,i,j,X,Index; scanf("%d %d",&N,&M); Create(); for(i=0;i<N;i++) { scanf("%d",&X); Insert(X); } for(i=0;i原创 2021-03-08 13:37:42 · 202 阅读 · 0 评论 -
(浙江大学数据结构C语言实现)7-2 Reversing Linked List (25 分)
#include<stdio.h>#include<stdlib.h>#define MAXN 100010typedef struct List Node; //*Node 发生段错误 ? struct List{ int Data; int Next;};Node A[MAXN];int list[MAXN];void Swap(int *a,int *b);void Reverse(int *list,int a,int b);int main(){转载 2021-03-08 10:59:28 · 461 阅读 · 2 评论 -
(浙江大学数据结构C语言实现)7-3 树的同构 (25 分)
#include<stdio.h>#include<stdlib.h>#define ElementType char#define Null -1#define Tree int #define MaxTree 10struct TreeNode{ ElementType Data; Tree Left; Tree Right;}Tree1[MaxTree],Tree2[MaxTree];Tree BuildTree(struct TreeNode T[])原创 2021-03-06 16:58:09 · 291 阅读 · 0 评论 -
(浙江大学数据结构C语言实现)01-复杂度1 最大子列和问题 (20 分)
#include<stdio.h>#include<stdlib.h>int MaxSubseqSum(int a[],int N);int i;int main(){int K;scanf("%d",&K);int *a=(int *)malloc(sizeof(int)*K);int i;for(i=0;i<K;i++){scanf("%d",a+i);}int Max=MaxSubseqSum(a,K);printf("%d",Max原创 2021-03-06 12:40:42 · 125 阅读 · 0 评论