自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 typedef struct student与 struct student的区别

typedef struct student{int data;typedef struct student *next;}student;struct student{int name;int age;};第二个是定义了一个结构体student 结构体内有name和age第一个是定义结构体struct student 为student,(实际上就是吧struct student换了一种叫法,新的叫法为student),这和 typedef int ElemType;是一样的.

2020-07-29 10:57:06 1503

原创 System函数相关操作

system(“CLS”)system(“CLS”)可以实现清屏操作system(“pause”)暂停批文件的处理并显示消息。(按任意键继续…)system(“color 0A”)color后面的0是背景色代号,A是前景色代号。各颜色代码如下:0=黑色 1=蓝色 2=绿色 3=湖蓝色 4=红色 5=紫色 6=黄色 7=白色 8=灰色 9=淡蓝色 A=淡绿色 B=淡浅绿色 C=淡红色 D=淡紫色 E=淡黄色 F=亮白色system(“title xxx”);设置cmd窗口标题输出

2020-07-27 17:07:28 158

原创 public class 与class 的区别

一:,public class 后的名字必须和文件名一致,如果文件名为hello.java,但定义为public class helloworld{}则会出现编译错误。二: public class 定义的类可以被其他包所引用,但是class就不行三: 一个程序中只能有一个public class,但是可以有多个class...

2020-06-04 22:39:41 194

原创 java.对象和类(2)

一、使用java库中的类①Date类java.util.Date date = new java.util.Date();Syetem.out.printf(date.toString());②Random类使用Random类是必须制定一个种子或者使用默认种子,如果有相同的种子,则产生相同的数列Random generator1 = new Random(3);System.out.print(generator1.nextInt(1000));③Point2D类二、静态方法,静

2020-06-04 22:39:26 105

原创 java.对象和类(1)

一、类和对象的基本概念类: 类似于c语言中的结构体。是一种成员,函数等的集合体,类中定义的是对象的状态和行为。对象: 表示为特性的表示,每个个体依据不同的特性有不同的对象对象的状态: 使用数据描述性质,例如用radius描述半径。对象的行为: 要求对象做某些事,例如用getArea()来获取面积,用setRadius(radius)修改半径。二、类的定义和使用其他副类应建立于public类之外代码中只能有一个主类(public),编译后,文件名为public类名,其他类编译成class文件主

2020-06-02 12:43:38 95

原创 java.字符

特殊字符的转义:字符型与数值型转换浮点型转换为char型,首先将浮点型转换为int,再将int转换为charchar ch = (char)65.25;//将65对应字符赋值给chchar型转换为数值型int i = (int)'A';//i = 65隐式转换和显示转换:byte,short,char -->int -->long -->float -->double从小到大为隐式转换,大到小为显示转换,即强制转换。byte a;int b = 10;in

2020-05-14 19:21:42 135

原创 java.数学函数

2020-05-13 16:59:55 107

原创 java.布尔类型,随机数,闰年,三元操作符

boolean型(布尔类型),只有两个值,true 或者falseif(i > j){ if(i > k) System.out.println("A");}elseSystem.out.println("B");如果在第一个if语句中不加花括号,则else与第二个if匹配,因为else总与离他最近的if语句匹配。Math.random()产生一个【0.0,1.0)之间的随机double值小数求余大数等于他本身判断是否为闰年,(year % 4 == 0 &&am

2020-05-13 16:52:09 273

原创 BF算法和KMP算法

BF核心思想: S是主串,T是字串。比较连个字符串S和T,先比较S[ 1 ] 和T[ 1 ]进行比较,如果相等则比较S[ 2 ]和T[ 2 ],一直移动到S[ N ]为止,若S[ 1 ]和T[ 1 ]不相等,则S享向右动一个字符,再将S[ 2 ]和T[ 1 ]进行比较。KMP算法:...

2020-04-28 21:14:29 181

原创 树的概念

定义: 树是n个结点的有限集,当n = 0时,称为空树。在任意一棵非空树中:——有且仅有一个特定的称为根的结点。——当n>1时,其余结点可分为互不相交的有限集,每个集合都是一棵树,并且称为根的子树。结点拥有的子树称为结点的度。树的度取树内各结点度的最大值。——度为0的结点称为叶结点或终端结点。——度不为0的结点称为分支结点,除根以外,分支结点也叫内部结点。结点的子树的根称为结...

2020-04-28 21:13:39 165

原创 队列的顺序存储结构(数组)

**假溢出:**数组未满但是越界了。使用顺序结构写队列,可能回出现下标越界得情况,所以我们可以用循环队列//循环队列#define MAXSIZE 100typedef struct{ ElemType *base; int front; int rear;}cycleQueue;//初始化循环队列//1.分配内存。2.首尾指针指向0InitQueu...

2020-04-19 17:56:36 170

原创 队列(链式存储,指针)

**定义:**队列(queue)时只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列也是以顺序表或链表为基础。队列既可以用链表也可以用顺序表。我们一般用顺序表实现栈,用链表实现队列如果是队尾进行插入操作,那么就只能在队首进行删除操作,这才是队!typedef struct QNode{ ElemType data; struct QNode *next;}...

2020-04-19 17:20:27 710

原创 中缀表达式转换为后缀表达式

平时我们使用的四则运算就是中缀表达式#include<stdio.h>#include<stdlib.h>typedef int Elemtype;typedef struct{ ElemType *top; ElemType *base; int stackSize;}sqStack;InitStack(sqStack *s){...

2020-04-19 15:26:19 185

原创 逆波兰表达式

逆波兰表达式也叫后缀表达式下式为转换成逆波兰表达式( 1 - 2 )*( 4 + 5 )—> 1 2 - 4 5 + *那么逆波兰表达式对于栈的意义在哪里呢?当然是简化操作步骤,正常来说计算机进行这种带括号的运算需要先算括号里面的,再算括号外面的,而逆波兰表达式则只需要顺序操作即可,不需要反复操作。这就取得了空间与时间的优势。逆波兰表达式的运算过程。即遇到符号则推...

2020-04-18 20:03:52 153

原创 栈的链式存储结构

栈的链式存储结构typedef struct StackNode{ ElemType data;//存放栈的数据 struct StackNode *next;}StackNode,*LinkStackPtr;typedef struct LinkStack{ LinkStackPtr top;//top指针 int count;//栈元素计数器} ...

2020-04-18 14:46:18 93

原创 循环链表(2)

循环链表中,如果我们要找最后一个元素,时间复杂度为o(n),因为我们需要从第一个开始一个接一个的找。那怎样再次简化,将时间复杂度降低呢我们可以设置一个尾指针(作用类似于头指针)指向尾结点,尾结点的指针指向第一个结点,第一个结点的指针指向第二个结点LinkList LinkA_and_B(LinkList A,LinkList B){ A ->next= B->next-&g...

2020-04-18 14:26:12 310

原创 栈和队列

栈: 是一个后进先出的线性表,他要求只在表尾进行删除和插入操作。栈的要求: 1.元素必须后进先出2.栈的操作只能在线性表的表尾进行3.对于栈来说,表尾成为栈的栈顶,表头成为栈底栈的插入和删除操作1.栈的插入操作叫进栈,压栈,入栈2.栈的删除操作叫做出栈,弹栈。栈也是线性表,所以栈也有两种存储方式:1.栈的顺序存储结构2.栈的链式存储结构//创建一个栈typedef struc...

2020-04-16 21:49:51 127

原创 malloc简单解释

*H=(LinkList )malloc(sizeof(Node)); p=(LinkList*)malloc(sizeof(Node));解释这两句代码左右等号中的星号的意思先解释等号右边的星号;等号右边的星号是强制类型转换,(LinkList* )是指向LinkList类型的指针,此时malloc返回的是没有类型的指针,根据等号左边的类型来决定等号右边的类型比如...

2020-04-13 21:30:15 1851

原创 约瑟夫环

#include<stdio.h>#include<stdlib.h>typedef struct node{ int data; struct node *next;}node;//建立结构node *create(int n)//定义一个指针型函数,该函数返回值为指针//create函数创建链并返回一号结点的指针;{ node...

2020-04-13 19:41:16 98

原创 循环链表(1)

循环链表顾名思义就是尾指针指向头指针的链表,使整个链表形成一个环。//循环链表的初始化void ds_inis.c(node **pNode){ int iteml; node *temp; node *target; printf("输入结点的值,输入0完成初始化\n"); while(1) { scanf("%d",&item)...

2020-04-12 14:45:23 241

原创 LinkList *L , LinkList L, LinkList *&L 和 LinkList &*L区别及用法

首先讲几个概念a = 1 ,b = 2 viod swap(int i,int j){ int t; t = i; i = j; j = t;}swap(a,b)printf("%d,%d",a,b);\//输出结果:1 2 该代码并不能交换a和b,因为参数传递的过程仅为值传递,在该代码中也就是将1赋值给i,2赋值给j,并在swap中交换i与j。形参的交换并不能影响实参的...

2020-04-04 20:09:48 9977 5

原创 静态链表

静态链表: 用数组描述的链表。姑且我们命名这个数组为a如图所示,0下标没有数据,因为线性表是从1开始的,所以当我们用数组描述线性表时,第0哥元素为空,即a0为空。1. 最后一个元素的游标的数字为第一个有数据数组的下标(即a999对应的游标是a1的下标),作用相当于头结点。2. 下标为0对应的游标是第一个没有数据的下标(即a0的游标和a5的下标是相等的)。3. 其余的元素的游标都存的是下一...

2020-04-03 17:02:28 467

原创 线性表---单链表的基本操作

链式存储概要: 不光要存储数据元素信息,还要存储他后继元素的存储地址(类似指针)。一些定义:数据域:存储数据元素信息的域。指针域:存储直接后继位置的域,指针域中存储的信息称为指针或链。数据域和指针域组成数据元素成为存储映像,也叫结点Node。n个结点链接成一个链表,就是线性表的链式存储结构。此链表中每个结点只包含一个指针域,所以叫做单链表。头指针和头结点的异同头指针:1.头指针是...

2020-04-03 15:49:09 302

原创 第一次数据结构笔记(线性表的基本操作)

第一次数据结构笔记(线性表的基本操作)**PS:1.线性表不同于数组,线性表从1开始,而数组从0开始。2.typedef 是自定义一个类,类似于int double 等,只不过是自定义的。 如typedef int Status,在后面的代码中,Status即代表int,int x == Status x; **1. 线性表的顺序存储结构:#define MAXSIZE 20...

2020-03-27 20:31:21 175

空空如也

空空如也

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

TA关注的人

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