Java优先队列的简单实现
最近在学习最小生成树时,用到了优先队列这个结构,琢磨这自己也来写下,搞了半天终于写出来了,于是就记录下 import java.util.ArrayList;
class MyHeap<Type extends Comparable<Type>>{
private ArrayList<Type> data;
private int MaxSize;
private int size;
public MyHeap() {
this
[CF1200E]Tourism
题面描述 给定一个n个点,m条边的无向图,其中你在第i个点建立旅游站点的费用为Ci。在这张图中,任意两点间不存在节点数超过10的简单路径。请找到一种费用最小的建立旅游站点的方案,使得每个点要么建立了旅游站点,要么与它有边直接相连的点里至少有一个点建立了旅游站点。 输入格式 第一行包含两个正整数n,m(1<=n<=20000,0<=m<=25000),分别表示点数和边数。 第二行包含n个整数,其中第i个数为Ci(0<=Ci<=10000),表示在第i个点建立旅游站点的费用。 接下来m行,每行两个
django里template中的书名号
<<{{ book.name }}>> 这样写是错误的 英文的书名号会报错 就是如果书名号中的内容是以英文字母打头的, 就会出现错误,如图 一定要用中文的书名号 《{{ book.name }}》
【Eureka篇三】Eureka集群配置(5)
1. 新建子模块microservicecloud-eureka-7002(后面简称7002) 和 microservicecloud-eureka-7003(后面简称为7003),packaging均是jar模式,以microservicecloud-eureka-7001(后面简称为7001)的pom.xml为模板配置。 2. 将7001的EurekaServer7001_App.java、application.properties文件拷贝到7002和7003,并修改启动类为Eureka
【LGOJ3403】跳楼机
一栋楼共有 h 层,有以下操作:
1. 向上移动x层
2. 向上移动y层
3. 向上移动z层
4. 回到第一层
问可以达到的楼层数量 如果令\(f(i)\)表示表示仅通过操作2和操作3能到达的 \(mod\ x=i\) 的最小楼层 那么就有以下方程: \[f(i+y)=f(i)+y\] \[f(i+z)=f(i)+z\] 想一想最短路的转移方程 \[f(v)=f(u)+dis(u,v)\] 是不是很像? 所以我们可以建图,把 \(i+y\) 和 \(i+z\) 看作点 \(y,z\)成为权值,
1003CSP-S模拟测试赛后总结
我是垃圾……我只会骗分。 拿到题目通读一遍,感觉T3(暴力)是个树刨+线段树。 刚学了树刨我这个兴奋啊。然而手懒决定最后再说。 对着T1一顿yyxjb码了个60pts的测试点分治就失去梦想了。(顺便围观fh大神写完T1并拍上,心态稍崩) 然后开始yyT2。经过我发了半天呆缜密而周详的思考觉得可以打个背包。裸背包dp40pts就失去理想了。(围观fh大神写完T2并拍上,心态略炸) T3好像稍难???20分$O(n^2m)$暴力走起然后失去理想,一直想链怎么做直到考试结束。 期望得分:60+40+
Python常用模块——random随机模块
Python常用模块——random随机模块 程序中有很多地方都需要用到随机字符,比如登录网站的随机验证码,通过random模块可以很容易生成随机字符串。 >>> random.randrange(1,10) #返回1-10之间的一个随机数,不包括10
>>> random.randint(1,10) #返回1-10之间的一个随机数,包括10
>>> random.randrange(0, 100, 2) #随机选取0到100间的偶数,即步长为2
>>> random.random()
js文档系统-jsdoc-docdash
https://github.com/clenemt/docdash http://clenemt.github.io/docdash/index.html http://www.dba.cn/book/jsdoc/ http://tapiov.net/live-server/ https://github.com/http-party/http-server
动态规划——01背包
转 https://www.cnblogs.com/Christal-R/p/Dynamic_programming.html 问题描述:有n 个物品,它们有各自的重量和价值,现有给定容量的背包,如何让背包里装入的物品具有最大的价值总和? 三、动态规划的原理及过程: eg:number=4,capacity=8 i 1 2 3 4 w(体积) 2 3 4 5 v(价值) 3 4 5 6 定义V(i,j):当前背包容量 j,前 i 个物品最佳组合对应的价值; 寻找递推关系式,面对当前商品
C语言l博客作业02
这个作业属于哪个课程 C语言程序设计1 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/8687 我在这个课程目标是什么 能很好的编程,更好的编写程序 这个作业在哪些具体方面帮我实现目标 改善一些错误 参考文献 提问的智慧 PTA系统常见问题解答 1. 阅读作业 一. 请仔细阅读《提问的智慧》,用自己的话描述你的收获,并举例子说明应该如何提问。文章链接:https://g ithub.com/ruby-china
PackagesNotFoundError: The following packages are not available from current channels
今天python在安装一些包(xgboost,mlxtend)的时候遇到这个问题。 按照其他博客的方法,如https://blog.csdn.net/miao0967020148/article/details/85230430可以解决,但是每次安装新包又会出现这个问题,最后看了其他一些博客,应该是路径中没有添加需要安装包所在的channel导致,可以通过下面的方法彻底解决: 终端中输入代码: conda config --add channels conda-forge 再通过conda或者
国庆集训Day3笔记
简单数据结构 例题 CF103D \(y\geq \sqrt m\)时暴力做 \(y< \sqrt m\)时暴力与处理 bzoj2054 倒序处理,只有最后一个覆盖操作对这个位置有影响 并查集维护每个位置的下一个未覆盖的位置 CF480E 倒序操作,答案显然是不降的 枚举一个当前的答案\(ans\),判断每次是否可以\(+1\) \(check(ans+1)\)的话只需要考虑新增的正方形,即有一列是确定的,维护一下每个格子最远可以向左/右多少个格子,用一个\(sliding\ windows\
Flume初见与实践
Photo by Janke Laskowski on Unsplash 参考书籍:《Flume构建高可用、可扩展的海量日志采集系统》 ——Hari Shreedharan 著 以下简称“参考书籍”,文中部分资料和图片会标注引用自书中。官方文档简称“官文”。 文章为个人从零开始学习记录,如有错误,还请不吝赐教。 Flume 初见 · 简介 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,可以高效地收集、聚合和移动大量的日志数据。它具有基于流数据
Python常用模块——time&datetime模块
Python常用模块——time&datetime模块 在平常的代码中,我们常常需要与时间打交道。在Python中,与时间处理有关的模块就包括:time,datetime,calendar(很少用,不做介绍)。 我们写程序时对时间的处理可以归为以下3种: 1、时间的显示:在屏幕显示,记录日志等。 2、时间的转换:比如把字符串格式的日期转换成Python中的日期类型。 3、时间的运算:计算两个日期间的差值等。 一、time模块 在Python中,通常有以下3种方式来表示时间: 1、时间戳(tim
每日一题_191006
若\(\forall x\geqslant 1,x^{a+1}\mathrm{e}^x+a{\ln}x\geqslant 0\),则\(a\)的最小值为\(\underline{\qquad\qquad}\). 解析: 由题首先考察\(a<0\)的情形,设\(t=-a\),则\(t>0\),且题中不等式等价于\[ \forall x\geqslant 1,x\mathrm{e}^x\geqslant x^t{\ln}x^t.\] 构造函数\(F(x)=x\mathrm{e}^x\),显然\(F
排序算法系列1--简单排序(选择,冒泡,直接插入)
排序是数据处理中十分常见的操作,现代高级语言都有现成的n种排序算法。但了解它们的代码,对计算机思维有帮助。 简单选择排序 每一趟从待排序的数据元素中选择最小(或最大)的一个元素作为首元素,直到所有元素排完为止,简单选择排序是不稳定排序。 无论数组原始排列如何,比较次数都不变;变的是交换次数。完全有序的情况下无需交换移动元素,最差情况下(把数组倒序改成正序),交换次数最多: n-1。 时间复杂度是n2 冒泡排序 以前的博文:https://www.cnblogs.com/chentianwei/
搜索插入位置 二分查找
题目: 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1: 输入: [1,3,5,6], 5 输出: 2 示例 2: 输入: [1,3,5,6], 2 输出: 1 示例 3: 输入: [1,3,5,6], 7 输出: 4 示例 4: 输入: [1,3,5,6], 0 输出: 0 class Solution {
public:
int searchInsert(vecto
命令行记录-初始Proj4包以及栅格数据投影转换
1、本篇内容包含两个部分,一是使用PROJ4包对点进行投影转换,二是栅格数据投影转换的示例 2、 #3\另外一个投影包PROJ4 from pyproj import Proj,Geod,transform #projection1:UTM zone15, grs80 ellipse, NAD83 datum #(defined by epsg code 26915) p1=Proj(init='epsg:26915') #projection2:UTM zone 15,clrk66 elli
今日推荐
周排行