
c数据结构
山川き
这个作者很懒,什么都没留下…
展开
-
求图的最短路径(迪杰斯特拉算法)
#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>const int Len=105;const int INF =99999;typedef struct Node{ int nv;//点 int ne;//边 int data[Len][Len]; int visited[Len];}*graph;//图grap原创 2020-12-04 20:43:26 · 405 阅读 · 1 评论 -
BFS(邻接矩阵)
#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>const int Len=105;const int maxn = 1e5 + 10;typedef struct Node{ int nv;//点 int ne;//边 int data[Len][Len]; int visited[Len];}*graph;//图原创 2020-12-04 19:07:25 · 742 阅读 · 0 评论 -
BFS(邻接表)
#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>const int Len=105;const int maxn = 1e5 + 10;typedef struct AdjVNode *PtrToAdjVNode;struct AdjVNode { int adjv; int pow; PtrToAdjVNode Next;};原创 2020-12-04 17:11:11 · 258 阅读 · 0 评论 -
DFS(邻接表)
#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>const int Len=105;typedef struct SNode* Stack;struct SNode { int data; struct SNode* next;};//栈typedef struct AdjVNode *PtrToAdjVNode;struct AdjVNode原创 2020-12-04 16:29:45 · 269 阅读 · 0 评论 -
DFS(邻接矩阵)
#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>const int Len=105;typedef struct SNode* Stack;struct SNode { int data; struct SNode* next;};//栈typedef struct Node{ int nv;//点 int ne;//边 i原创 2020-12-04 16:28:51 · 653 阅读 · 0 评论 -
归并排序算法实现
#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>void merge(int a[],int l,int r,int mid){ int ax[1000],i,j,k; for(k=l;k<=r;k++) ax[k-l]=a[k]; i=l; j=mid+1; for(k=l;k<=r原创 2020-11-23 23:14:16 · 87 阅读 · 0 评论 -
快速排序
#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>void quicksort(int a[],int left ,int right){ int i,j,t,temp; if(right<left) return ; temp=a[left]; i=left; j=right; while原创 2020-11-21 16:18:29 · 82 阅读 · 0 评论 -
堆排序算法实现(最小堆)
最小堆排序#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>const int MAX = 0x3f3f3f3f;const int maxn = 1000;typedef struct HeapStruct *MinHeap;struct HeapStruct { int data[maxn]; int Size; int Ca原创 2020-11-20 19:22:03 · 1732 阅读 · 0 评论 -
堆排序算法实现(最大堆)
最大堆排序#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>const int MAX = 0x3f3f3f3f;const int maxn = 1000;typedef struct HeapStruct *MaxHeap;struct HeapStruct { int data[maxn]; int Size; int Ca原创 2020-11-20 18:48:06 · 127 阅读 · 0 评论 -
树的各种遍历方法
树的各种遍历方法#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>const int maxn = 1e5 + 10;int sum=0;//树typedef struct tree *tramp;struct tree{ char data; struct tree *left; struct tree *right; };/原创 2020-11-05 00:24:08 · 364 阅读 · 2 评论 -
栈的建立
#include <stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>const int maxn = 1e5 + 10;typedef struct SNode* Stack;struct SNode { int data; struct SNode* next;};Stack CreatStack() { Stack ptrl; ptrl = (Stack)m原创 2020-10-25 16:59:04 · 144 阅读 · 0 评论 -
List and Applications
链表的增删改查及应用#include<stdio.h>#include<stdlib.h>typedef struct LNode* List;struct LNode { int Data; List Next;};List MakeEmpty()//建立空表{ List Ptrl; Ptrl = (List)malloc(sizeof(struct LNode)); Ptrl->Next = NULL; return Ptrl;}List Fi原创 2020-10-24 16:18:07 · 118 阅读 · 0 评论