- 2024-10-092024/10/9日 日志
今天进行了离散数学中关于并包的知识,通过对之前关系内容的复习和今天知识的学习,对三种并包形式,即自反r,对称s,传递t的实现有了规律总结,即RIr即(如包含x,x),RIk即(如包含y,x),以及R*R+即(R+R2+R3+.....+Rn)。此外,在数据结构的学习中,继续学习了关于栈以及队列的内容,并对双栈公用的代码进行了实
- 2024-10-09两栈共享
两栈共享是一种数据结构的使用方式。一、概念两栈共享是指在一个连续的存储区域中同时存放两个栈。这两个栈分别从存储区域的两端开始向中间生长,通过合理的设计和管理,可以有效地利用存储空间,避免了为两个独立的栈分别分配空间可能导致的空间浪费。二、实现方式空间分配通常将
- 2024-09-29C语言 | Leetcode C语言题解之第445题两数相加II
题目:题解:structListNode*addTwoNumbers(structListNode*l1,structListNode*l2){intstack1[100];intstack2[100];inttop1=0;inttop2=0;intcarry=0;intsum=0;structListNode*temp=NULL;structListNode*he
- 2024-09-02共享栈:两栈共享空间
现在这里插个链接,这是笔者之前写的一篇文章,讲的是基础版的栈,如果对栈不太熟悉可以先看看这一篇文章。引入 上一篇文章我们学到了栈的顺序存储,这种方法只允许在栈顶针对元素进行操作,所以他并不存在像线性表一样在插入或删除操作时考虑移动元素的问
- 2024-08-26【两栈共享空间】------一种特殊的顺序栈
前言:虽然顺序栈的存储已经十分方便,但是它有一个非常致命的缺陷:即必须事先确定数组存储空间的大小,万一不够用就需要动态扩容但对于两个相同类型的栈,我们可以做到最大限度的利用其事先开辟的存储空间,既让两栈共享空间1.共享栈的定义两个栈共享同一个存储空间,这片空间不单
- 2024-08-20剑指 offer 09.用两个栈实现队列
目录原题链接题目描述题目样例示例1输入输出示例2输入输出解决方案核心思路两个栈的作用操作细节代码解答复杂度分析总结其他相似题目原题链接剑指offer_在线编程_牛客网(nowcoder.com)题目描述用两个栈实现一个队列。队列的声明如下,请实现它的两个函
- 2024-07-2024点 Pascal大暴力程序
24点大暴力程序:PascalCode:constdic:array[1..4]ofchar=('+','-','*','/');vargd:array['!'..'a']oflongint;q1:array[0..105]ofextended;q2:array[0..105]ofchar;a:array[1..4]oflongint;
- 2024-07-12数据结构笔记之表达式求值
概念:运算是由运符和操作数组成的,DIY概念指的是左操作数、右操作数和运符之间的关系。中缀表达式:运符位于操作数之间,这是我们日常生活中最常用的表达式形式。后缀表达式:运符在操作数后面,这种表达式形式没有括号,易于解析。前缀表达式:运符在操作数前面,同样没有括号,但需要遵循不同
- 2024-06-30loj#2880. JOISC 2014 稻草人
搞了很久,题解区有线段树爆改pushup高妙做法说下cdq分治先将点都按横坐标从小到大排序,cdq分治,那我们现在只需要考虑分治过程中\([l,mid]\)和\([mid+1,r]\)互相形成的合法点对,显然左边的横坐标都小于右边的横坐标。能够发现,如果右边有一个点插在一对本来合法的点之间,那么那对合法
- 2024-04-08C语言面试题之化栈为队
化栈为队实例要求C语言实现实现一个MyQueue类,该类用两个栈来实现一个队列;示例:MyQueuequeue=newMyQueue();queue.push(1);queue.push(2);queue.peek();//返回1queue.pop();//返回1queue.empty();//返回false说明:1、只能使用标准的栈操作,即只有p
- 2024-01-22CodeForces 1609F Interesting Sections
洛谷传送门CF传送门看到\(\max,\min\)考虑单调栈。枚举右端点,计算有多少个符合条件的左端点。单调栈维护的是对于每个右端点,以每个点为左端点的后缀\(\max,\min\)形成的极长的段。先枚举\(\text{popcount}=k\),然后如果一个段的\(\max\)的\(\text{popcount}=k\)
- 2023-12-17[Ynoi2004] rpmtdq 题解
人生第一发\(Ynoi\)的题,写一篇题解庆祝一下传送门我们可以发现,对于二元组\((x,y)\),若存在一个\(dist(i,j)\ledist(x,y),x<i<j<y\)那么答案肯定不是二元组\((x,y)\)我们可以考虑把这些肯定不是的点剔除掉考虑怎么找,我们可以先点分治,求出每个点
- 2023-11-14[USACO23FEB] Equal Sum Subarrays G 题解
[USACO23FEB]EqualSumSubarraysG题解题目链接\(O(n^5)\)暴力显然,如果修改\(a_i\)的值,只会影响包含\(a_i\)的区间的区间和。于是对于每个\(a_i\),可以将所有区间分成两类,即包含\(a_i\)的区间和不包含\(a_i\)的区间。这两种区间的区间和中最小的差值即为答案。
- 2023-08-27P2486 [SDOI2011] 染色 题解
P2486[SDOI2011]染色神仙树剖题。题意给你一棵树,每个点都有颜色,支持下面两种操作:路径染色。路径颜色段数量查询。树剖部分我们看到树上问题,不好处理,所以想办法给他树剖搞一搞,给他转化成序列的操作。我们树剖就是正常的树剖,然后我们考虑如何维护这个颜色序列。我
- 2023-08-01CF526F Pudding Monsters
CF526FPuddingMonsters题意给定一个\(n\timesn\)的棋盘,其中有\(n\)个棋子,每行每列恰好有一个棋子。求有多少个\(k\timesk\)的子棋盘中恰好有\(k\)个棋子。\(n\le3\times10^5\)。题解首先注意到每行每列只有一个数这个性质。这意味着我们可以将这个二维数
- 2023-07-09#551. 合并果子(二叉堆)
#551.合并果子_#551.合并果子方法一:手写堆(题解->陶)#include<bits/stdc++.h>usingnamespacestd;constintmaxn=10000+10;intn,heap[maxn],size=0;voidup(intp)//二叉小根堆向上调整(子节点小于父节点就调整){while(p>1){if(heap[p]<heap[p/2]){
- 2023-05-17神策杯 2018高校算法大师赛(个人、top2、top6)方案总结
1竞赛背景神策数据推荐系统是基于神策分析平台的智能推荐系统。它针对客户需求和业务特点,并基于神策分析采集的用户行为数据使用机器学习算法来进行咨询、视频、商品等进行个性化推荐,为客户提供不同场景下的智能应用,如优化产品体验,提升点击率等核心的业务指标。神策推荐系统是一
- 2023-04-22冲刺清北营 4
今天成人礼。于是打算写点无营养鲜花。口胡场都能被打自闭,真有你的。一花二乃三玖四叶五月六小.jpg那你说的对。猴戏世家P4737。场上脑抽,想到了后一半,没想到前一半。死于一直想从下到上扫描线无果,然后开始想怎么在线做。从上到下扫描线,然后开个set维护栅栏。扫到一
- 2023-02-05CF884D 题解
题目传送门题目分析开始还真没看出来这题跟\(\text{P1090}\)合并果子的关系。其实只要逆向思考,把拆分看成效果一样的合并就可以了。而与合并果子不同的是,在这题当中
- 2022-11-21CF500F New Year Shopping
双栈维护插入删除:右加右删。维护一个栈。右加左删。维护两个栈,左边栈删除,右边的栈加入,左边栈为空时将右边栈中的数从顶至底加入,均摊进行\(\mathcalO(n)\)次操
- 2022-11-02阿里TDM论文阅读《Learning Tree-based Deep Model for Recommender Systems》
背景推荐本质上需要完成从全量商品库高效检索Topk相关商品,由于候选商品数量过于庞大,现在的推荐系统一般分为两个阶段:召回和排序。对于召回阶段,面临着从全量商品库里面,高效
- 2022-10-18FZU 1061 矩阵连乘
Problem1061矩阵连乘Accept:445 Submit:1699TimeLimit:1000mSec MemoryLimit:32768KB ProblemDescription给定n个矩阵{A1,A2,...,An},考察这n