- 博客(13)
- 收藏
- 关注
原创 C语言中define的用法(括号中宏的替换)
程序中用双引号括起来的宏在预处理的时候是不会被宏替换的!因为在 C 语言中,用双引号括起来表示的是字符串。宏定义用得最多的地方是在数组中用于指定数组的长度。请输入5个数:5 4 3 2 1。
2023-10-13 20:02:06
362
1
原创 字符串中的每个字符是否能在另一字符串找到Y/N
//注意下字符如何输入和最后的判断具体是怎么来的 #include<bits×dc++.h> using namespace std; int main(){ int num=0; int str2,str1,i,j; char c; char a[10001]; char b[10001]; while((c=getchar()) != '\n'){ a[num++]=c; } a[num]='\0'; num=0; while((c=get
2022-12-14 23:08:46
164
原创 时间显示 蓝桥杯c++
注意:int的取值范围为:-2^31 ---- 2^31-1 ,即:-2147483648 - 2147483647 long long的最大值:9223372036854775807(>10^18 题目所说给定的数不超过10^18则应当注意是否须使用 long long int 型) long long的最值:-9223372036854775808 完整代码如下: #include <iostream> using namespace std; int main() {
2022-12-09 19:58:17
435
原创 数组的元素位置与存储(详)
数组中元素的地址 LOC(0)=a, i=0 LOC(i) = LOC(i-1)+L=a+i*L, i>0 二维数组的行序优先表示 设数组开始存储位置LOC(0,0),存储每一个元素需要L个存储单元,每行n元素, 数组元素a[i][j]的存储元素是:LOC(i,j)=LOC(0,0)+(n*i+j)*L 特殊矩阵的压缩存储: 什么是压缩存储? 若多个元素的值都相同,则只分配一个元素值的
2022-09-28 16:40:40
1382
原创 广义表及其性质
广义表 广义表通常记作:LS=(a1,a2,...an) 其中:LS为表名,n为表的长度,每一个ai为表的元素 习惯上,一般用大写字母表示广义表,小写字母表示原子 表头:若LS非空(n>=1),则其第一个元素a1就是表头 记作head(LS)= a1 注:表头可以是原子,也可以是字表 表尾:除表头之外的其他元素组成的表 记作tail(LS)=(a2,...,an) 注:表尾不是最后一个元素,而是一个字表 例: (1) A=() 空表,长度为0 (2) B=(()) 长度为1,表头表尾
2022-09-28 13:17:17
895
原创 串的匹配算法_BF算法与KMP算法
(本文推荐电脑观看) 串的模式算法——————BF算法 算法的思路:从S(主串)的每一个字符开始依次与T(模式串)的字符进行匹配 (从0开始) int Index_BF(SString S,SString T){ int i=1,j=1; while(i<=S.length && j<=T.length){ if(S.ch[i]==T .ch[j]) {++i; ++j;} //主串和子串依次匹配下一个字符 else {i=i-j+2 ; j=1
2022-09-27 21:08:40
221
原创 串的概要及操作
串:————————零个或多个任意字符组成的有限序列 s="a1a2...an" s:串名 串值:a1a2...an 串长:n n=0:空串 串的顺序存储结构: #define MAXLEN 255 typedef struct{ char ch[MAXLEN]; //存储串的一维数组 int length; //串的当前长度 }SString; 串的链式存储结构: 优点:操作方便 缺点:存储密度较低 存储密度=串值所占的存储/实际分配的存储 串的链式存
2022-09-27 21:05:47
189
原创 链栈的操作
//链栈是运算受限的单链表,只能在链表头部进行操作 typedef struct stackNode{ SElemType data; struct stackNode *next; }stackNode,*Linkstack; Linkstack; //链栈的初始化 void Initstack(Linkstack &S){ S =NULL; //构造一个空栈,栈顶指针置为空 } //判断链栈是否为空 Status stackEmpty(linkstack S){
2022-09-17 11:31:00
370
原创 顺序栈的操作
//栈是一条特殊的线性表,是限定在一端进行插入和删除操作的线性表 //base=top 栈空 //top-base=stacksize 栈满 //上溢:栈已经满,又要压入元素 //下溢:栈已经空,又要弹出元素 //顺序栈 # define MAXSIZE 100 typedef struct { SElmType *base; //栈底指针 SElmType *top; //栈顶指针 int stacksize; //栈可用最大容量 } SqStack
2022-09-17 11:29:12
447
2
原创 链队列的操作
//链队——————队列的链式表示和实现 //若用户无法估计所用队列的长度,则宜采用链队列 //链队列的类型定义 #define MAXQSIZE 100 typedef struct Qnode{ QelemType data; struct Qnode *next; } QNode,*QuenePtr; typedef struct{ QueuePtr front; //队头指针 QueuePtr rear; //队尾指针 }
2022-09-12 13:10:29
441
原创 循环队列的操作
//队列的顺序表示 #define MAXQSIZE 100 // 最大队列长度 Typedef struct { QelemType *base; //初始化的动态分配存储空间 int front; //头指针 int rear; //尾指针 } SqQueue; //循环队列的初始化
2022-09-12 13:07:58
676
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅