![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 70
梦醒已隔万重秋
那些年,千万情话,落笔生花;再看她,无限相思,流转天涯
展开
-
variably modified 'a' at file scope 之减治法---假币问题
话不多说,直接报错看以下代码/***************减治法---假币问题有n枚外观形同的硬币,里边有一枚假币,质量较轻,通过一架天平找出假币****************************/#include#define N 8 //const int N = 8; //有8枚硬币,此处有错int a原创 2017-04-22 16:10:18 · 3529 阅读 · 0 评论 -
两栈共享空间
/*两栈共享空间*///存储结构定义const int StackSize = 10;typedef int DataType;typedef struct{ DataType data[StackSize]; int top1,top2; //分别为各自栈顶元素在数组中的下标}BothStack;//入栈操原创 2017-06-18 20:09:09 · 349 阅读 · 0 评论 -
栈的链接存储结构及实现
/*栈的链接存储结构及实现*///初始化栈void InitStack(Node *top){ top = NULL;}//入栈操作void Push(Node *top,DataType x){ s = (Node)malloc(sizeof(Node)); s->data = s; s->next = top;原创 2017-06-19 20:12:11 · 530 阅读 · 0 评论 -
循环队列的顺序存储结构及实现
/*循环队列的顺序存储结构及实现*///存储结构定义const int QueueSize = 10; //定义数组最大长度typedef int DataType;typedef struct{ DataType data[QueueSize]; //存放队列元素数组 int front,rear;原创 2017-06-20 14:43:05 · 668 阅读 · 0 评论 -
链队列的链接存储结构及实现
/*队列的链接存储结构及实现*///链队列的存储结构typedef int DataType;typedef struct Node{ DataType data; Node *next;}Node;typedef struct //定义链队列{ Node *front,*cear;}LinkQueue;原创 2017-06-20 21:48:33 · 1231 阅读 · 0 评论 -
括号匹配问题
/*括号匹配问题:判断一个算数表达式中的括号有没有正确匹配,如多一个左括号或者右括号*/#includeint Match(char *str){ char s[100]; int i,top = -1; for(i = 0;str[i] != '\0';i++) { if(str[i] == ')')原创 2017-06-21 20:27:32 · 230 阅读 · 0 评论 -
二叉链表
/*二叉链表*///二叉链表结构储存定义typedef int DataType;typedef struct BiNode{ DataType data; struct BiNode *lchild,*rchild;}BiNode,*root; //root为指向二叉链表根节点指针//前序遍历void PreOrd原创 2017-07-01 16:00:30 · 1179 阅读 · 0 评论 -
哈夫曼树
#include const int n = 5;typedef struct{ int weight; int parent,lchild,rchild;}element;char ch[n] = {'A','B','C','D','E'};int w[n] = {35,25,15,15,10};void HuffmanTree(eleme原创 2017-07-02 16:18:53 · 249 阅读 · 0 评论 -
七巧板问题及 fatal error LNK1168: cannot open Debug/5.exe for writing报错
#include const int N = 7; //定义七个区域int main(){ char board[N] = {'A','B','C','D','E','F','G'}; int arc [N][N] = {{0,1,0,0,1,1,0},{1,0,1,1,0,0,0},{0,1,0,1,0,0,0}, {0,1,原创 2017-07-02 17:27:11 · 3801 阅读 · 0 评论 -
算术表达式求值
计算3*(4+2)/2-5的值#include #include int Comp(char str1,char str2);int Compute(char *str);int Comp(char str1,char str2){ switch(str1) { case '+': case '-'原创 2017-06-22 20:47:57 · 727 阅读 · 0 评论 -
医院选址问题
/*医院选址问题在五个村庄之中选一个建立医院,要求各个村庄往返路程越短越好,最好应该选在何处有向网的邻接矩阵0 13 M 4 M13 0 15 M 5M M 0 12 M4 M 12 0 MM M 6 3 0*/#includeconst int N = 5;const int MaxValue原创 2017-07-03 10:46:39 · 4553 阅读 · 1 评论 -
发纸牌问题---多维数组
/*纸牌有四种花色,13个点数,如何随机发几张纸牌???*/#include #include //使用库函数srand和rand#include //使用库函数time#include //使用库函数strcpy和stract#include //使用malloc等库函数实现动态存储原创 2017-06-24 21:56:50 · 613 阅读 · 0 评论 -
多维数组------八皇后问题
/*八皇后问题在8*8的棋盘上摆放8个皇后,不能处于一排一列或者一斜线上,,使其不能相互攻击*/#include #include //使用绝对值函数asbconst int N = 100; //最多求100皇后问题int x[N] = {-1}; //数组初始化为-1int Place(int k)原创 2017-06-25 14:29:52 · 352 阅读 · 0 评论 -
线性表--顺序表的实现
/*顺序表*///存储结构定义const int MaxSize = 10; //最多存放10个元素typedef int DataType; //数据类型typedef struct{ DataType data[MaxSize]; //存放数据元素数组 int length; /原创 2017-06-14 14:45:00 · 251 阅读 · 0 评论 -
单链表
/*单链表*///储存结构定义typedef int DataType;typedef struct Node{ DataType data; Node *next; Node *first; //指向链表头指针}//初始化单链表Node *InitList(Node *first){ first原创 2017-06-14 21:07:01 · 264 阅读 · 0 评论 -
栈的顺序存储结构及实现
/*栈的顺序存储结构及实现*///顺序栈的存储结构定义const int StackSize = 10; //栈元素最多10个typedef int DataType; //DataType为栈元素的数据类型typedef struct{ DataType data[StackSize]; //存放栈元素的数组原创 2017-06-18 14:45:49 · 591 阅读 · 0 评论 -
一元多项式求和的实现
/*一元多项式求和例:A(x)=7*12x^2-2x^8+5x^12 ,B(x)=4x+6x^3+2x^8+5x^20+7x^28,求A(x)+B(x)把系数指数依次输入,输入 0 0 结束*/#include #include //实现动态存储分配typedef struct Node //定义单链表结点{原创 2017-06-17 21:31:53 · 921 阅读 · 0 评论 -
指针的地址调用-----读取学生最高分
读取一个班的成绩的最高分及对应学号#include #define N 30void FindMax(int score[],long num[],int n,int *pMaxScore,long *pMaxNum);void FindMax(int score[],long num[],int n,int *pMaxScore,long *pMaxNum原创 2017-05-16 20:34:04 · 520 阅读 · 0 评论 -
按值调用与按地址调用
/*void类型表示你的main函数无返回值,但是你在main函数体内又加了return 0,也就是说有返回值,这和你前面的void是相冲突的.要么有void,去掉return 0,要么把void 改成 int或者其他数据类型.*/#include void Fun(int *par);void Fun(int *par){ printf(原创 2017-05-16 18:48:04 · 434 阅读 · 0 评论 -
二维数组——————学生成绩管理
/****************对一个班级人数为40以内的三门考试成绩进行统计计算每个学生以及全班的总成绩及平均数********************/#include#define STUD_N 40 //人数最大容量#define CONSURE_N 3 //考试科目数最大容量int ReadScore(int score[原创 2017-05-14 21:28:30 · 3483 阅读 · 0 评论 -
折半查找---通过选择法排序对成绩进行排序
/*******************线性查找法————折半查找通过选择法排序对学号进行排序折半查找的基本思想:首先选取数组中间位置的元素,将其与查找键进行比较,如果相等,则返回下标,找出值,否则,查找区间缩小为原来的一半,**********************/#include #define N 40void DataSort(int score原创 2017-05-13 20:45:09 · 1906 阅读 · 0 评论 -
线性查找法————折半查找
/*******************线性查找法————折半查找根据已经排好大小的学号进行折半查找折半查找的基本思想:首先选取数组中间位置的元素,将其与查找键进行比较,如果相等,则返回下标,找出值,否则,查找区间缩小为原来的一半,**********************/#include #define N 40int ReadScore(int scor原创 2017-05-12 21:12:25 · 548 阅读 · 0 评论 -
线性查找法————使用查找键逐个与数组元素进行比较实现查找
/*******************线性查找法————使用查找键逐个与数组元素进行比较实现查找查找过程:利用循环顺序扫描整个数组,依次把每个元素与待查找元素比较,若找到,停止循环,输出位置输入学号和成绩,输入学号,查找成绩**********************/#include #define N 40int ReadScore(int score原创 2017-05-12 19:53:17 · 694 阅读 · 0 评论 -
选择法排序—————对一个班学生成绩按大小进行排序,并对应学号
/*******选择法排序—————对一个班学生成绩按大小进行排序,并对应学号选择法算法函数:void DataScore(int score[],int i){ int i,j,k,temp; for(i=0;i { if(score[j]>score[k]) { k=j;原创 2017-05-11 21:33:20 · 7653 阅读 · 1 评论 -
交换法排序——————将班级学生人数少于40的成绩0---100分进行从高到低排序
/*交换法排序——————将班级学生人数少于40的成绩0---100分进行从高到低排序*/#include#define N 40 //定于N的数组内存int ReadScore(int score[]) //读取学生成绩,当输入不是0--100的时候结束输入{ int i = -1; //初始化i,下标从0开始 do原创 2017-05-11 19:56:01 · 835 阅读 · 0 评论 -
递归函数——————汉诺塔问题
/********************************递归函数——————汉诺塔问题********************************/#include void Move(int n,char a,char b);void Hanoi(int n,char a,char b,char c){ if(n==1) {原创 2017-05-09 20:20:36 · 298 阅读 · 0 评论 -
数字旋转方阵 分治法
/*********************数字旋转方阵分治法187296345********************/#include #define N 10 //定义符号常量Nint data[N][N]={0}; //定义全局数组data[N][N]并初始化为0void Full(int number,int begin,int s原创 2017-04-20 20:32:19 · 1497 阅读 · 0 评论 -
蛮力发 数字迷 ABB*B=ACBC
/*************蛮力发数字迷ABB*B=ACBC***************/#include int main(){ int A,B,C,temp1,temp2,flag = 0; for(A = 1;A for(B = 2;B for(C = 0;C原创 2017-04-20 17:47:18 · 516 阅读 · 0 评论 -
七桥问题抽象之欧拉回路
/***************** 七桥问题-》欧拉回路判定规则:1、如果通过奇数个桥的城区多于俩个,则不存在欧拉回路2、如果只有俩个城区通过奇数个桥,则可以从这俩个城区之一出发找到欧拉回路3如果没有一个城区通过奇数个桥,则无论从哪里出发都可以找到欧拉回路*****************/#include int EulerCricuit(int m原创 2017-04-20 17:17:38 · 482 阅读 · 0 评论 -
循环单链表遍历算法
/*循环单链表遍历算法*/void PrintList(Node *first){ p = first->next; while(p!=first) { printf(p->data); p = p->next; }}原创 2017-06-16 15:07:38 · 2168 阅读 · 1 评论 -
约瑟夫环问题
/*约瑟夫环问题*///一圈共有N个人,开始报数,报到M的人自杀,然后重新开始报数,问最后自杀的人是谁?#include #include typedef struct Node{ int data; struct Node *next;}Node;Node *Great(int n){ Node *rear = NULL,*s;原创 2017-06-16 16:58:48 · 240 阅读 · 0 评论 -
双链表
/*双链表求表长,按位查找,按值查找,遍历等与单链表类似*///存储结构定义typedef int DataType;typedef struct DulNode{ DataType data; //data为数据域 struct DulNode *prior,*next; //prior为前驱指针域,原创 2017-06-15 17:08:38 · 245 阅读 · 0 评论