- 博客(57)
- 收藏
- 关注
原创 邻接矩阵弗洛伊德
#include<stdio.h>#include<stdlib.h>#define INF 9999999#define MaxSize 50typedef struct{ char vex[MaxSize]; int edge[MaxSize][MaxSize]; int vexnum,arcnum;}MGraph;void Floyd(MGraph G){ int A[MaxSize][MaxSize],path[MaxSize][MaxSize]; .
2021-12-03 14:11:50
110
原创 邻接矩阵的迪杰斯特拉(dijkstra)
#include<stdio.h>#include<stdlib.h>#define INF 9999999#define MaxSize 50typedef struct{ char vex[MaxSize]; int edge[MaxSize][MaxSize]; int vexnum,arcnum;}MGraph;void Dijkstra(MGraph G,int v,int dist[],int path[]){ int final[MaxSize].
2021-12-03 13:15:23
489
原创 存入二叉树的算术表达式的遍历求值
思路是后续遍历二叉树(也就是后最表达式)遍历到一个元素时存入到栈里一个,如果遇到符号就弹出当前的两个栈顶元素和符号运算,求出值再插入栈中,知道最后一个元素就是算数表达式的值。#include<stdio.h>#include<stdlib.h>#define MaxSize 50typedef struct{ char data[MaxSize]; int top;}Sqstack;void InitStack(Sqstack &s){ s.top=-
2021-11-21 04:23:51
461
原创 递归二分查找
#include<stdio.h>#include<math.h>int search(int A[],int key,int low,int high){ int mid; if(low<=high){ mid=(low+high)/2; if(low<=high && key<A[mid]){ printf("%d\n",A[mid]); search(A,key,low,mid-1); } else if(.
2021-11-11 22:55:47
192
原创 静态数组二分查找
#include <stdio.h>#include <stdlib.h>#define MaxSize 50typedef struct{ int data[MaxSize]; int length;}Sqlist;bool ListInsert(Sqlist &L,int i,int e){ L.length=10; if(i<1 || i>L.length+1) //判断i的范围是否有效 return false; if(L.l.
2021-11-05 22:50:17
52
原创 8.6王道综合应用
#include<stdio.h>#include<math.h>#include<stdlib.h>void Printf(int A[],int n){ for(int i=0;i<=n-1;i++){ printf("%d ",A[i]); } printf("\n");}void Sort(int A[],int n){ int *B=(int *)malloc(n*sizeof(int)); int num,j,i; for(i.
2021-10-28 19:24:54
219
原创 8.6王道综合应用4
#include<stdio.h>#include<math.h>void Printf(int A[],int n){ for(int i=0;i<=n-1;i++){ printf("%d ",A[i]); } printf("\n");}void Sort(int A[],int n,int num){ int temp,temp2=A[num-1]; temp=A[n-1]; A[n-1]=A[num-1]; A[num-1]=temp; .
2021-10-28 18:38:42
62
原创 8.6 综合应用2
#include<stdio.h>#include<stdlib.h>#include<math.h>void Printf(int A[],int n){ for(int i=0;i<n;i++){ printf("%d ",A[i]); }}void sort(int A[],int m,int n){ int *B=(int *)malloc((m+n)*sizeof(int)); for(int i=1;i<=n+m;i++).
2021-10-27 16:07:12
65
原创 8.4选择排序综合应用5
#include<stdio.h>#include<stdlib.h>#include<math.h>bool If(int A[],int n){ int i,j; if(A[0]>A[1] || A[0]>A[2]) return false; for(i=n/2-1;i>0;i--){ for(j=2*i;j<=n-1;j=j*2){ if(A[j+1]<A[j] && j+1<=n-.
2021-10-26 17:50:07
56
原创 8.4选择排序综合应用4
#include<stdio.h>#include<stdlib.h>typedef struct LNode{ int data; struct LNode *next;}LNode,*LinkList;void Insert(LinkList &L){ LNode *s; int x; L=(LinkList)malloc(sizeof(LNode)); //头指针 L->next=NULL; scanf("%d",&x); whi.
2021-10-26 16:05:54
57
原创 8.4选择排序2
#include<stdio.h>#include<stdlib.h>#include<math.h>void jj(int A[],int i,int num){ int temp=A[i],temp2; for(int j=2*i;j<=num-1;j=j*2){ if(A[j+1]<A[j] &&j<=num-2){ j++; } if(A[j]<temp){ temp2=A[j]; .
2021-10-24 20:51:18
60
原创 8.3交换排序综合应用7
#include<stdio.h>#include<stdlib.h>#include<math.h>void Sort(int A[],int n){ int left=-1,right=n,i=0,temp; while(i<right){ //此处不能小于n,如果小于n的话就最后一个颜色会和第二个颜色颠倒 if(A[i]==1){ left++; temp=A[i]; A[i]=A[left]; .
2021-10-23 19:11:02
80
原创 8.3交换排序综合应用6
#include<stdio.h>#include<stdlib.h>#include<math.h>void Sort(int A[],int n){ int temp; for(int i=0;i<=n-1;i++){ for(int j=i+1;j<=n-1;j++){ if(A[i]>A[j]){ temp=A[i]; A[i]=A[j]; A[j]=temp; } } }} vo.
2021-10-23 17:22:02
69
手写windows下c++线程池
2023-01-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人