自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 【动态规划】 小练习

背包问题/***** 时间:2018年11月22日*** 问题:有n项作业,每项作业都有各自的完成时间以及收益,求在D时间内做作业获得的最大收益*** 方法:动态规划,递归**/#include<stdio.h>struct task{ int time,value;};int opt(task p[],int n,int d){ ...

2019-12-19 22:15:38 958

原创 【数组整体左移&右移】

#include<stdio.h>#include<string.h>void Swap(int a[],int i,int j){ for(;i<j;i++,j--){ int temp = a[i]; a[i] = a[j]; a[j] = temp; } }void Move(int a[],int s,int p){ S...

2019-12-18 16:17:20 1174

原创 【十进制转换成二进制】 C语言

位运算例如: 8 1 0 0 0 0 & 1 1 1 1 1------------------ 1 0 00 0int binary(int a,int b[]){ int i=0; while(a!=0){ b[i++] = a&1; a = a>>1; } return i;}in...

2019-12-17 16:21:31 249

原创 【100元兑换成10、5、1元的方案】

非递归#include<iostream>using namespace std;int fun(){ int n = 0; for(int a1=1;a1<=10;a1++) { for(int a2=1;a2<=20;a2++) { for(int a3=1;a3<=100;a3...

2019-12-16 19:26:05 1723

原创 【打印菱形星号图】 C语言

#include<stdio.h>void fun(){ int i,n,j; printf("请输入要打印的菱形的上半三角形的高度(大于0的正数):\n"); scanf("%d",&n); if(n<1) printf("输入为非正数:错误\n"); else{ int m = 2*n-1; //打印行数 i = m-1; ...

2019-12-15 17:24:47 2955

原创 【哈希表——简单实现】

#include<stdio.h>#include<malloc.h>#define MAXSIZE 12 #define Status int#define TURE 1#define FALSE 0 #define NULLKEY -32768 // 哈希表 typedef struct HASHTABLE{ int* elem; int ...

2019-12-14 17:40:26 88

原创 【查找——折半查找——插值查找】

折半查找查找前提:序列必须是有序的。核心思想:每次都从查找范围的中间下标开始比较,如果key值偏大,因为序列式递增的,则将范围缩小至原来的右半部分,否则将范围缩小至左半部分,接着继续计算中间下标,继续比较,直至匹配关键字。时间复杂度:O(logn)#include<stdio.h>int fun(int a[],int left,int right,int ...

2019-12-03 17:44:58 364

原创 【图——邻接表】

typedef char VertexType;typedef int EdgeType;#define MaxVex 100typedef struct EdgeNode //边表结点{ int adjvex; //邻接点域,存储邻接顶点对应的下标 EdgeType weight; //用于存储权值,对于非网图可以不需要 struct EdgeNode *...

2019-12-03 17:15:26 159

原创 【栈——链栈】

#include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct LINKNODE{ struct LINKNODE* next;}LinkNode;typedef struct LINKSTACK{ LinkNode head; int size;}LinkSt...

2019-12-02 16:39:37 76

原创 【栈——求解后缀表达式】

/*** 求解后缀表达式: 遍历后缀表达式中的数字和符号: 对于数字:进栈 对于符号:从栈中弹出数字作为右操作数 从栈中弹出数字作为左操作数 根据运算符进行运算 将运算结果压入栈中 遍历结束:栈中唯一数字作为计算结果***/#include<stdio.h>#include<stdlib.h...

2019-12-02 16:39:10 165

原创 【简单字符串匹配】 C语言

查找S串中第一次出现T串的位置#include<stdio.h>#include<string.h>int fun(char s[],char t[]){ int i=0,j=0; int Slen = strlen(s); int Tlen = strlen(t); while(i<Slen&&j<Tlen){ ...

2019-12-02 16:38:52 426 1

原创 【栈——中缀表达式转后缀表达式】

/**中缀转后缀的算法: 遍历中缀表达式中的数字和符号: 对于数字:直接输出 对于符号: ·左括号:进栈 ·运算符号:与栈顶符号进行优先比较 若栈顶符号优先级低:此符号进栈 (默认栈顶若是左括号,则左括号的优先级最低) 若栈顶符号优先级高:将栈顶符号弹出(并输出),直到栈顶的符号优先级低,然后进栈 ·右括号:将栈顶符号弹出(并输出...

2019-12-01 19:42:46 130

原创 【栈——括号匹配】

#include<stdio.h>#include<stdlib.h>#define MAX_SIZE 1024#define SEQSTACK_True 1#define SEQSTACK_FALSE 0/** 扫描字符串,如果碰到左括号,直接入栈; 如果碰到右括号,从栈顶弹出括号, 判断是否是左括号,如果是则匹配成功**///数组模拟栈的...

2019-12-01 19:42:02 65

原创 【栈——顺序栈】

#include<stdio.h>#include<stdlib.h>#define MAX_SIZE 1024#define SEQSTACK_True 1#define SEQSTACK_FALSE 0//数组模拟栈的顺序存储typedef struct SEQSTACK{ void* data[MAX_SIZE]; int size;}Se...

2019-12-01 19:41:28 82

原创 【队列——顺序循环队列】

#include<stdio.h>#include<malloc.h>#define State int#define Ture 1#define False 1#define MAXSIZE 10 //队列容量为10,故实际能装填数组的大小为9(循环队列的满状态是指容量还剩1) typedef struct QUEUE{ int a[MAXS...

2019-12-01 18:24:47 250

原创 【二叉树——拷贝与释放】

#include<stdio.h>#include<stdlib.h>#include<string.h>//二叉树结点typedef struct BINARYNODE{ char ch; struct BINARYNODE* lchild; struct BINARYNODE* rchild;}BinaryNode;//遍历二叉...

2019-12-01 17:30:49 142

原创 【二叉树——计算高度】

#include<stdio.h>#include<stdlib.h>#include<string.h>#include"tree.h" //二叉树结点typedef struct BINARYNODE{char ch;struct BINARYNODE* lchild;struct BINARYNODE* rchild;}Bina...

2019-12-01 17:29:36 97

原创 【二叉树——计算叶子数量】

#include<stdio.h>#include<stdlib.h>#include<string.h>//二叉树结点typedef struct BINARYNODE{ char ch; struct BINARYNODE* lchild; struct BINARYNODE* rchild;}BinaryNode;// 计算叶...

2019-12-01 17:28:48 3696

原创 【二叉树——遍历】

#include<stdio.h>#include<stdlib.h>#include<string.h>//二叉树结点typedef struct BINARYNODE{ char ch; struct BINARYNODE* lchild; struct BINARYNODE* rchild;}BinaryNode;void ...

2019-12-01 17:28:03 53

原创 【线性表——企业链表】

企业链表企业链表与普通的链表的区别是,后者的结点包含数据域和指针域,而前者只有指针域。因为指针的灵活性,只要将指针强转为任意一种数据结构的指针,便能拥有想要的数据元素。例如:以下是两种不同的数据结构typedef struct LINKNODE{ struct LINKNODE* next;}LinkNode;typedef struct PERSON{ char*...

2019-12-01 17:27:00 143

原创 【线性表——循环链表】

#include<stdio.h>#include<stdlib.h> #include<string.h>#define CIRCLELINKLIST_TRUE 1#define CIRCLELINKLIST_FALSE 0//链表的小结点typedef struct CIRCLELINKNODE{ struct CIRCLELINK...

2019-12-01 17:26:24 76

原创 【线性表——链表】

一、写链表,主要需要两个结构体: 一个是表头LinkList(只要知道了表头的地址,就能往下找到每一个结点;表头还记录结点长度) 一个是结点LinkNode(包括数据域和指针域,每个结点都是通过指针域串联起来)//表头typedef struct LINKLIST{ LinkNode* head; int size;}LinkList;...

2019-12-01 16:33:37 239

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除