![](https://i-blog.csdnimg.cn/direct/f27f2f013bd54d4ea2972877558eaa2b.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
文章平均质量分 60
主要介绍c++的STL容器
Aurora_th
算法ing
展开
-
LeetCode 2844.生成特殊数字的最少操作(哈希表 + 贪心)
在来观察,被25整除,思考思考,你会发现25 * (1 ~ n)中的数他的后两位尾数是{25,50,75,00},只要能发现这个规律,那这道题也就结束了,当然想不到也没关系,慢慢积累。那接下来就是两个指针i和j去遍历就行了,把{25,50,75,00}存到哈希表里面,如果key = num[i] + num[j]在哈希表里面找到了,就去更新一次ans的值。删除 num[3]、num[4] 和 num[6] ,得到数字 "2900" ,可以被 25 整除。在一次操作中,您可以选择。,表示一个非负整数。原创 2024-07-25 12:33:08 · 407 阅读 · 0 评论 -
如何建立一颗二叉树?(数据结构:树 + hash表 / 广搜BFS)
一个二叉树,树中每个节点的权值互不相同。现在给出它的后序遍历和中序遍历,请你输出它的层序遍历。原创 2024-07-20 21:23:38 · 953 阅读 · 1 评论 -
洛谷B3642 二叉树的遍历(前序、中序、后序)
有一个 𝑛(𝑛≤10^6) 个结点的二叉树。给出每个结点的两个子结点编号(均不超过 𝑛),建立一棵二叉树(根节点的编号为 1),如果是叶子结点,则输入。之后 𝑛 行,第 𝑖 行两个整数 𝑙、𝑟,分别表示结点 𝑖 的左右子结点编号。若 𝑙=0 则表示无左子结点,𝑟=0 同理。树的最基本的三个遍历:前序:根左右、中序:左根右、后序:左右根。建好树这棵二叉树之后,依次求出它的前序、中序、后序列遍历。第一行一个整数 𝑛,表示结点数。第一行是这个二叉树的前序遍历。第三行是这个二叉树的后序遍历。原创 2024-06-13 20:44:05 · 517 阅读 · 0 评论 -
洛谷P1160 队列安排(链表的基本应用)
第 2∼𝑁 行,第 𝑖 行包含两个整数 𝑘,𝑝,其中 𝑘 为小于 𝑖 的正整数,𝑝 为 0 或者 1。若 𝑝 为 0,则表示将 𝑖 号同学插入到 𝑘 号同学的左边,𝑝 为 1 则表示插入到右边。2∼𝑁 号同学依次入列,编号为 𝑖 的同学入列方式为:老师指定编号为 𝑖 的同学站在编号为 1∼(𝑖−1) 中某位同学(即之前已经入列的同学)的左边或右边;接下来 𝑀 行,每行一个正整数 𝑥,表示将 𝑥 号同学从队列中移去,如果 𝑥 号同学已经不在队列中则忽略这一条指令。第一行一个整数 𝑁,表示了有 𝑁 个同学。原创 2024-06-07 20:20:48 · 508 阅读 · 2 评论 -
洛谷 P5076 普通二叉树(STL容器:multiset)
您需要写一种数据结构,来维护一些数(都是绝对值 109以内的数)的集合,最开始时集合是空的。其中需要提供以下操作,操作次数 𝑞 不超过 104:保证执行 1,3,4 操作时,集合中有至少一个元素。第一行是一个整数 𝑞,表示操作次数。接下来 𝑞 行,每行两个整数 𝑜𝑝,𝑥,分别表示操作序号以及操作的参数 𝑥。输出有若干行。对于操作 1,2,3,4,输出一个整数,表示该操作的结果。这道题好像是一道平衡二叉树,我不会,但是STL中有个容器比较适合这道题multiset模拟即可: 加油原创 2024-06-10 19:17:09 · 481 阅读 · 0 评论