首页 > 其他分享 >2024/10/9日 日志

2024/10/9日 日志

时间:2024-10-09 22:34:11浏览次数:1  
标签:10 return int top2 value 2024 top1 日志 ds

今天进行了离散数学中关于并包的知识,通过对之前关系内容的复习和今天知识的学习,对三种并包形式,即自反r,对称s,传递t的实现有了规律总结,即RIr即(如包含x,x),RIk即(如包含y,x),以及R*R+即(R+R2+R3+.....+Rn)。
此外,在数据结构的学习中,继续学习了关于栈以及队列的内容,并对双栈公用的代码进行了实现。

点击查看代码
#include <stdio.h>
#include <stdlib.h>

#define MAX_SIZE 100

// 定义栈结构
typedef struct {
    int *stackArray;
    int top1;
    int top2;
} DoubleStack;

// 初始化双栈
void initDoubleStack(DoubleStack *ds, int size) {
    ds->stackArray = (int *)malloc(size * sizeof(int));
    ds->top1 = -1;
    ds->top2 = size;
}

// 销毁双栈
void destroyDoubleStack(DoubleStack *ds) {
    free(ds->stackArray);
    ds->stackArray = NULL;
    ds->top1 = -1;
    ds->top2 = 0;
}

// 判断栈1是否为空
bool isStack1Empty(DoubleStack *ds) {
    return ds->top1 == -1;
}

// 判断栈2是否为空
bool isStack2Empty(DoubleStack *ds) {
    return ds->top2 == MAX_SIZE;
}

// 压栈1
bool pushStack1(DoubleStack *ds, int value) {
    if (ds->top1 + 1 == ds->top2) {
        // 栈满
        return false;
    }
    ds->top1++;
    ds->stackArray[ds->top1] = value;
    return true;
}

// 压栈2
bool pushStack2(DoubleStack *ds, int value) {
    if (ds->top1 + 1 == ds->top2) {
        // 栈满
        return false;
    }
    ds->top2--;
    ds->stackArray[ds->top2] = value;
    return true;
}

// 弹栈1
bool popStack1(DoubleStack *ds, int *value) {
    if (isStack1Empty(ds)) {
        return false;
    }
    *value = ds->stackArray[ds->top1];
    ds->top1--;
    return true;
}

// 弹栈2
bool popStack2(DoubleStack *ds, int *value) {
    if (isStack2Empty(ds)) {
        return false;
    }
    *value = ds->stackArray[ds->top2];
    ds->top2++;
    return true;
}

// 查看栈1的栈顶元素
bool peekStack1(DoubleStack *ds, int *value) {
    if (isStack1Empty(ds)) {
        return false;
    }
    *value = ds->stackArray[ds->top1];
    return true;
}

// 查看栈2的栈顶元素
bool peekStack2(DoubleStack *ds, int *value) {
    if (isStack2Empty(ds)) {
        return false;
    }
    *value = ds->stackArray[ds->top2];
    return true;
}

标签:10,return,int,top2,value,2024,top1,日志,ds
From: https://www.cnblogs.com/MoonbeamsC/p/18455331

相关文章

  • # 20222323 2024-2025-1 《网络与系统攻防技术》实验一实验报告
    1.实验内容1、熟悉基本的汇编指令,如管道、输入、输出重定向2、掌握了栈与堆的概念3、掌握反汇编与十六进制编程器实验任务1、手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数。2、利用foo函数的Bof漏洞,构造一个攻击输入字符串,覆盖返回地址,触发getShell函数。3、......
  • 2024/10/09 模拟赛总结
    \(100+40+20+8=168\),拿到了大众分,至少没挂分吧#A.矩阵交换一个\(m\)维偏序,可以使用\(m-1\)维树状数组解决以第\(i\)作为第\(i\)关键字,进行排序,这样一定最优。排完之后直接判断是否满足条件即可//BLuemoon_#include<bits/stdc++.h>usingnamespacestd;consti......
  • 10.9日
    .定义与语法JavaScript:函数可以使用关键字function定义,也可以使用箭头函数(ES6+):javascriptfunctionmyFunction(a,b){returna+b;}constmyArrowFunction=(a,b)=>a+b;Java:函数是类中定义的方法,必须指定返回类型,并且所有的方法都属于某个类:javapublicclas......
  • ChatGPT国内中文版镜像网站整理合集(2024-10月最新)
    一、GPT中文镜像站① yixiaai.com 支持GPT4、4o、o1、文件上传、知识库,支持MJ绘画② chat.lify.vip 支持通用全模型,支持文件读取、插件、绘画、AIPPT③ AIChat 支持GPT3.5/4,4o以及MJ绘画1.什么是镜像站镜像站(MirrorSite)是指通过复制原始网站内容和结构,创建的备用......
  • 代码随想录算法训练营day10| 232.用栈实现队列 225. 用队列实现栈 20. 有效的括
    学习资料:https://programmercarl.com/栈与队列理论基础.html栈与队列学习记录:232.用栈实现队列(两个栈(stack_in,stack_out)实现一个队列的行为)点击查看代码classMyQueue(object):def__init__(self):self.stack_in=[]self.stack_out=[]d......
  • 20222426 2024-2025-1 《网络与系统攻防技术》实验一实验报告
    学号202224262024-2025-1《网络与系统攻防技术》实验一实验报告1.实验内容1.1NOP,JNE,JE,JMP,CMP汇编指令的机器码:1.1.1NOP(NoOperation)功能:NOP指令是一条空操作指令,它不做任何事情。执行NOP指令时,处理器的状态(如寄存器值、内存内容等)不会发生变化,只是简单地消耗了一......
  • 20222401 2024-2025-1 《网络与系统攻防技术》实验一实验报告
    1.实验内容本次实验是关于缓冲区溢出攻击的,主要的学习内容如下:1.基本Linux命令objdump:将代码段反汇编,在这次实验中主要是用来找地址的。xxd:实现十六进制与二进制的转换,在这次实验的过程中,主要是有两个地方用到了这个命令。一是在打开文件后进行转换,而是以十六进制打开文件,保证......
  • 【笔记】杂题选讲 2024.10.5(DNF)
    十一杂题选讲-VirtualJudge(vjudge.net)/mnt/e/codes/contests/20241008/sol.md目录[AGC004F]Namori[1406E]DeletingNumbers[1081G]MergesortStrikesBack[1033E]HiddenBipartiteGraph[1254E]SendTreetoCharlie[1012E]Cyclesort[1284F]NewYearandSocialN......
  • 2024.10.9 LGJ Round
    B对于所有\(x\in[0,n],y\in[0,m]\),求执行\(x\getsx+y,y\getsx+y\)若干次后满足\(x=k\)的双元组个数。这个题充分体现我的唐氏。具体地枚举\(x,y\)分别被算了多少次,系数是斐波那契数列,所以项数很少。然后转化为求\(k_1x+k_2y=k\)的方案数,这个我非常唐不会求。只需......
  • 1009鲜花——当每颗星星
    突然发现自己已经好久没有来写博客了这是不好的正如某位\(AClove\)所说,我不能再这样摆烂下去了!经历了CSP-S2024第一轮的失利,我好像并没有完全的吸收教训还会在410玩吗?我不知道,我希冀不会的——————分割线————————“当一颗星搁浅人间再不能回曾经的天际线”......