自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 链栈

/*链栈*//*相当于单链表的头插和头插删除*/#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define Max 20typedef struct Node{ char data; struct Node*next;}Node,*LinkStack;LinkStack initiallist(LinkStack L){L=(LinkStack)malloc(sizeof(Node));

2020-11-25 09:49:56 176

原创 多栈共享操作

/*多栈共享操作*/#include<stdio.h>#define stacksize 50#define TRUE 1#define FALSE 0typedef struct{ char elem[stacksize]; int top[2];}doublesequencestack;/*双端顺序栈的初始化*/void initial(doublesequencestack * S){ S->top[0]=-1;//构造一个双端顺序空栈 S->to

2020-11-25 09:48:57 382

原创 顺序栈的实现

/*顺序栈的实现*/#include<stdio.h>#define stacksize 50#define TRUE 1#define FALSE 0typedef struct{ char elem[stacksize]; int top;}sequencestack;/*顺序栈的初始化*/void initial(sequencestack * S){ S->top=-1;//构造一个空栈 printf("initial sequence-stack su

2020-11-25 09:47:52 149

原创 静态链表

#include<stdio.h>#define maxsize 30typedef char elemtype;typedef struct{ int cur; elemtype data;}slink,slinklist[maxsize];void initspace_sl(slink *space){//将数据各分量链接成一个备用链表,space[0]代表头指针 int i; for(i=0;i<maxsize-1;i++) { space[i].cur

2020-11-25 09:46:59 215

原创 双向循环链表的插入删除,与两表的和并

/*双向链表的插入删除,与两表的合并*/#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define ERROR 0;#define OK 1;typedef struct Node{ char data; struct Node*prior,*next;}DNode,*DoubleLinklist;DoubleLinklist initiallist(DoubleLinklist L){

2020-11-25 09:45:42 371

原创 循环单链表的插入删除,与两表的和并

/*循环单链表的插入删除,与两表的合并*/#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define ERROR 0;#define OK 1;typedef struct Node{ char data; struct Node*next;}Node,*Linklist;Linklist initiallist(Linklist L){L=(Linklist)malloc(sizeof

2020-11-25 09:44:26 329

原创 单链表的插入删除,与两表的和并

/*单链表的插入删除,与两表的合并*/#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define ERROR 0;#define OK 1;typedef struct Node{ char data; struct Node*next;}Node,*Linklist;Linklist initiallist(Linklist L){L=(Linklist)malloc(sizeof(N

2020-11-25 09:42:00 107

原创 查找单链表中的特定序列i,特定元素key

/*查找单链表中的特定序列i,特定元素key*/#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define Max 20typedef struct Node{ char data; struct Node*next;}Node,*Linklist;//声明Node为结构体类型,Linklist为结构体指针类型/*void Initiallist(Linklist* L)//建立空的单链表

2020-11-25 09:40:55 415

原创 头插尾插创建单链表

/*头插尾插创建单链表*/#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define Max 20typedef struct Node{ char data; struct Node*next;}Node,*Linklist;//声明Node为结构体类型,Linklist为结构体指针类型/*void Initiallist(Linklist* L)//建立空的单链表{ /*1.L是指

2020-11-25 09:39:22 118

原创 顺序表的合并

顺序表的合并/*顺序表的合并*/#include<stdio.h>#include<stdlib.h>#define Max 20/*用typedef声明新类型名sequencelist,代表一个结构体类型,可用新类型名去定义变量 * 命名一个新的类型名sequencelist来代表结构体类型*/typedef struct { int a[Max];//线性表占用的数组最大空间 int last;//记录线性表最后一个元素的位置}sequencelist;

2020-11-25 09:37:49 2572

原创 顺序表的插入与删除

/*顺序表的插入和删除*/#include<stdio.h>#include<stdlib.h>#define Max 20/*用typedef声明新类型名sequencelist,代表一个结构体类型,可用新类型名去定义变量 * 命名一个新的类型名sequencelist来代表结构体类型*/typedef struct { int a[Max];//线性表占用的数组最大空间 int last;//记录线性表最后一个元素的位置}sequencelist;int in

2020-11-24 15:58:40 357 1

原创 结构体指针

/*结构体指针 */#include <stdio.h>/*定义结构体,用变量和指针和指向运算符进行输出*即stu1.成员,(*p).成员,p->成员,都可以输出结构体指针所指向的结构体变量的结构体成员*/#include <stdlib.h>#include<string.h>int main(void){ struct Student{ long num; char name[20]; char sex ; float score

2020-11-24 15:57:36 257

原创 返回指针的函数

/*返回指针的函数 */#include <stdio.h>/*1.float(*pointer)[n]会把从参数中传递进来的数据进行分行,n个数为一行 * 2.原数组score为4行3列(score标识) * 3.执行float(*pointer)[4]后数组score被重新划分为3行4列(用pointer标识)*/#include <stdlib.h>int main(void){float score[][3]={60,70,80,90,56,89,67,88,3

2020-11-24 15:56:27 849

原创 指向函数的指针做函数的参数

/*指向函数的指针做函数的参数 */#include <stdio.h>/*指向函数的指针变量的一个重要用途是把函数的地址作为参数传递到其他函数*/#include <stdlib.h>int main(void){int max();int min();void fun(int x,int y,int(*p)(int,int));//也可以用int类型的函数类型int add();int a=34,b=-21,n;printf("please choose 1,

2020-11-24 15:55:11 232

原创 指向函数的指针

/*指向函数的指针 */#include <stdio.h>/*指向函数的指针变量的一个重要用途是把函数的地址作为参数传递到其他函数*/#include <stdlib.h>int main(void){int max();int min();int (*p)(int,int);//指向函数的指针p类型为int(*)(int,int),返回值为类型名intint a,b,c,n;printf("please enter a and b:");fflush(stdo

2020-11-24 15:54:09 77

原创 用指向数组的指针做函数参数

/*用指向数组的指针做函数参数*/#include <stdio.h>/*int(*p)[m]表示p被定义为指向一维整形 数组的指针变量,这个一维数组有m个类型为int(*p)[m]的元素 */#include <stdlib.h>int main(void){void average(float * p,int n);//函数声明void search(float (*p)[],int n);//函数声明float score[3][4]={{65,67,70,60}

2020-11-24 15:53:02 637

原创 输出二维数组的有关数据和值

/*输出二维数组的有关数据和值*/#include <stdio.h>#include <stdlib.h>/*在C语言中,一维数组与二维数组在指针的使用上有所不同 *1.在一维数组a[n]中,a表示数组的首地址,a[i]表示特定的元素 *2.在二维数组a[m][n]中,a表示数组的首地址(数组中数组的首地址或整个储存空间的首地址),a[i]表示第i行的首地址 *3.C语言中 a[i]与*(a+i) 等价*/int main(void) { int a[3][4]={

2020-11-24 15:51:45 683

原创 数据结构(用c语言描述)

在这/*通过指针引用数组元素*/#include <stdio.h>#include <stdlib.h>int main(void) { int a[10]; int i,*p;//p为指向整形存储单元首地址的指针变量 printf("Please input the integer numbers:"); printf("\n"); fflush(stdout);//解决C语言中printf后的scanf不执行问题 /*在每个最后不带\n的printf后面加f

2020-11-24 15:50:15 1897

原创 通过指针变量访问整型变量

/*通过指针变量访问整型变量*/#include <stdio.h>#include <stdlib.h>int main(void) { int a=100,b=10;//定义整型变量a,b,并初始化。 /* int * point1,*point2; point1=&a; point2=&b; */ int *point1=&a; int *point2=&b; printf("a=%d,b=%d\n",a,b); pr

2020-11-24 15:48:28 1670

转载 数组排序

插入排序二分插入排序希尔排序#include<stdio.h>#include<stdlib.h>//输出数组void PrintArray(int *P, int length){ printf("Arrary Elements: "); for (int i = 0; i < length; i++) { printf("%d ", *(P + i)); }}//初始化数组,输入数组int* InitArray(int *p, int le

2020-11-24 15:23:02 64

原创 数据结构(图)

图的数组存储源代码:#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>#include<string.h>//图的数组表示#define INFINITY 0 //两个顶点之间无边或弧时的数值#define MAX_VERTEX_NUM 20 //最大顶点个...

2019-12-01 00:42:24 713

原创 并查集(C语言)

并查集并查集概念:如下图并查集的实现(1)初始化:初始化结点(独立标记每一个结点),初始化rank数组(用于记录子节点的个数)。void Initial_union_find_set(int n){ int i; for(i = 1;i < n;++i){ father[i] = i; rank[i] = 1; ...

2019-11-18 18:30:34 2820

原创 C语言回文串

回文数、回文字符串的判断一、回文数,回文串的描述:形如 ‘1 2 3 4 3 2 1’ 这样的数字,我们称为回文数。形如 ‘ a s d 1 2 3 2 1 d s a ’ 这样的字符串,我们称为回文串。注:即正着读和反着读可以得到同样的结果二、回文字符串的判断(1).通过一维动态数组从键盘读入要判断的字符串。a=(char*)malloc(sizeof(char)*len); f...

2019-11-11 15:26:35 5734 1

原创 矩阵相乘(C语言)

动态数组相乘一、动态数组的构建目标:动态生成 M * N 的数组做法:==1.构建指针数组:==指针数组的长度表示生成目标数组数的行数,存储每一行的地址。a=(int**)malloc(sizeof(int*)*M);//是以int*为单元开辟​ == 2.构建数组:==数组的每一行元素的首地址放入指针数组中。*(a+i)=(int*)malloc(siz...

2019-11-10 18:34:10 1201

原创 字符数组最长最短平台(C语言)

字符数组最长最短平台已知字符数组中的元素为 asssad333233 称a、sss、a、d、333、2、33 为字符数组的平台,其中 sss 、333 为字符数组的最长平台,a、d、2 为数组的最短平台,33为长度为2的平台。算法设计1.存储结构:结构体数组(可以存入相邻不同字符元素并统计其顺序出现的个数)。eg:asssad333233,存储为a1,s3,a1,d1,33,21,32。...

2019-10-31 19:01:20 863

原创 数组排序(冒泡,递归)

#include <stdio.h>int a[10]={12,14,48,6,3,4,5,7,26,9};/*冒泡排序*/void sort(int Array[]){ int n=0; for(int i=0;i<9;i++){ for(int j=0;j<9;j++){ if(a[j]>a[j+1]) { n=a[j]; ...

2019-10-29 18:37:31 132

原创 Java中的GridPane类

GridPane的简单使用GridPane的介绍GridPane类是以网格(矩阵)形式布局结点,这个结点被放在特定的行和列的索引中。需要导入的包import javafx.scene.layout.*;源代码/*GridPane*/package testDbms;import javafx.application.Application;import javafx.scene...

2019-10-24 20:41:46 5732

翻译 C语言实现简单的词法分析器(eclipse)

欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体...

2019-10-21 21:09:42 3324

空空如也

空空如也

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

TA关注的人

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