队列(Queue)也是一种运算受限的线性表,它的运算限制与栈不同,是两头都有限制,插入只能在表的一端进行(只进不出),而删除只能在表的另一端进行(只出不进),允许删除的一端称为队尾(rear),允许插入的一端称为队头 (Front) 队列的操作原则是先进先出的 1.头文件 1 #include<qu ...
分类:
其他好文 时间:
2020-02-10 11:35:52
阅读次数:
53
楼上的思路都是从一个石头找跳到另一个石头的路径,但其实这题可以对于上下左右四个方向分别做一个虚拟节点,然后只需要找虚拟节点左边的虚拟节点就行了 问题是:不会用set怎么办??? 其实可以发现用vector二分可以实现同样的操作(~~虽然长得不行而且还各种wa~~) vector存图的方法: 分别存下 ...
分类:
其他好文 时间:
2020-02-10 09:56:31
阅读次数:
64
AOV拓扑排序实验总结-1 实验数据:1、实验输入数据在input.txt文件中2、对于n是指有顶点n个,数据的结束标志是一行0 0。 实验目的:获取优秀的AOV排序算法模板 数据结构安排:1、队列:负责记录入度为0且没有排序的AOV顶点2、邻接表结点:邻接表结点采用自定义的复合结构,保存顶点信息、 ...
分类:
编程语言 时间:
2020-02-09 18:27:15
阅读次数:
138
假设循环队列最多能容纳k个整型数字,那么我们需要开辟k+1个空间,如图,当k = 6的时候,空间大小为7,即array.length() = 7.在起始的时候,front = rear = 0;在每次添加数字的时候( enqueue() ),rear都会+1,而k = 6,也就是从初始位置rear ...
分类:
其他好文 时间:
2020-02-09 11:41:44
阅读次数:
72
经典问题,货物供需平衡,很容易想到网络流,设源点和汇点,源点对每个仓库连一条capacity为仓库容量的边,cost为0,每个商店对汇点连一条capacity为需要的量的点,cost为0,每一个仓库与商店之间连一条capacity为无限大,cost为给定的边,直接跑最小费用最大流即可,求最大费用就去 ...
分类:
其他好文 时间:
2020-02-08 00:22:40
阅读次数:
64
暂时只放主程序的源码。有空再整理,部分涉及账号密码的源码已处理。 # coding:utf-8 from multiprocessing import freeze_support import requests import json from datetime import datetime i ...
分类:
其他好文 时间:
2020-02-07 22:20:43
阅读次数:
364
题解 看完这题,直接来一套最短路。这次WA了,淦。 因为这道题路径的选择条件为:第一标尺是距离短优先,第二标尺是从管理中心带出去的自行车少的优先,第三标尺是从站点带回去的自行车少的优先。 只用最短路算法解决这道题的话,第二标尺和第三标尺不能被正确维护,因为最短路算法的特点,会出现改变其他站点的自行车 ...
分类:
其他好文 时间:
2020-02-06 00:56:17
阅读次数:
83
一、思路分析 上一篇讲到用数组模拟队列,数组无法复用,下面讲解了用数组模拟环形队列的方法,采用取模的方式,使得数组可以重复使用。 首先先对front和rear的含义做了一个调整,front指向队列的第一个元素,rear指向队列最后一个元素的后一个位置。队列满的条件是(rear +1) % maxSi ...
分类:
编程语言 时间:
2020-02-05 20:21:03
阅读次数:
66
链表list 建立 头文件<list> list<string>l; list<int>l(8,0); vector<int>v; list<int>l(v.begin(),v.end()); 操作 插入 l.push_back(a);——在链表的后面添加元素 l.push_front(a);——在 ...
分类:
编程语言 时间:
2020-02-05 17:59:30
阅读次数:
80
不含括号的中缀表达式 代码实现 改进 前面的算法将 加减与乘除分开 处理,导致后面运算加减的时候还要考虑减法的运算顺序问题,变得麻烦了。 下面是改进后的代码 ...
分类:
其他好文 时间:
2020-02-04 20:03:19
阅读次数:
86