数据结构
文章平均质量分 77
雲梓雲
这个作者很懒,什么都没留下…
展开
-
L2-041 插松枝 (2022-4-23 天梯赛)
人造松枝加工场的工人需要将各种尺寸的塑料松针插到松枝干上,做成大大小小的松枝。他们的工作流程(并不)是这样的:每人手边有一只小盒子,初始状态为空。每人面前有用不完的松枝干和一个推送器,每次推送一片随机型号的松针片。工人首先捡起一根空的松枝干,从小盒子里摸出最上面的一片松针 —— 如果小盒子是空的,就从推送器上取一片松针。将这片松针插到枝干的最下面。工人在插后面的松针时,需要保证,每一步插到一根非空松枝干上的松针片,不能比前一步插上的松针片大。如果小盒子中最上面的松针满足要求,就取之插好;否则去推送.原创 2022-04-26 17:43:10 · 998 阅读 · 0 评论 -
L2-010 排座位 (25 分)
布置宴席最微妙的事情,就是给前来参宴的各位宾客安排座位。无论如何,总不能把两个死对头排到同一张宴会桌旁!这个艰巨任务现在就交给你,对任何一对客人,请编写程序告诉主人他们是否能被安排同席。输入格式:输入第一行给出3个正整数:N(≤100),即前来参宴的宾客总人数,则这些人从1到N编号;M为已知两两宾客之间的关系数;K为查询的条数。随后M行,每行给出一对宾客之间的关系,格式为:宾客1 宾客2 关系,其中关系为1表示是朋友,-1表示是死对头。注意两个人不可能既是朋友又是敌人。最后K行,每行给出一对需要查询的宾原创 2022-04-21 16:49:18 · 164 阅读 · 0 评论 -
图论学习总结
拓扑排序只适用于 AOV网 (有向无环图)算法流程:用队列来执行 ,初始化讲所有入度为0的顶点入队。主要由以下两步循环执行,直到不存在入度为 0 的顶点为止选择一个入度为 0 的顶点,并将它输出;删除图中从顶点连出的所有边。循环结束,若输出的顶点数小于图中的顶点数,则表示该图存在回路,即无法拓扑排序,否则,输出的就是拓扑序列 (不唯一)题目:给定一个 n 个点 m 条边的有向图,点的编号是 1 到 n,图中可能存在重边和自环。请输出任意一个该有向图的拓扑序列,如果拓扑序列不存在,则输原创 2021-08-17 17:41:43 · 928 阅读 · 0 评论 -
树状数组详解
文章目录前言一、树状数组概括二、树状数组的应用1.单点修改+区间查询总结前言 树状数组或二叉索引树(Binary Indexed Tree),又以其发明者命名为 Fenwick 树。其初衷是解决数据压缩里的累积频率的计算问题,现多用于高效计算数列的前缀和、区间和。它可以以 O(logn) 的时间得到任意前缀和。并同时支持在 O(logn) 时间内支持动态单点值的修改。空间复杂度 O(n)。一、树状数组概括树状数组是一个查询和修改复杂度都为log(n)的数据结构。主要用于数组的单点修改&转载 2021-07-31 10:29:39 · 18673 阅读 · 2 评论