摘要:
这道题只需要把最小的两个果堆加起来就可以了,好多大佬都用的是优先队列,但由于本人太菜,只好用数组做。 如果这样想,那么每合并一次都需要排一次序,但事实上并不需要这么做(而且这样会超时,我之前用sort函数排就过了四个点,后面全都tle了),只需要给新合并的果堆找到所在的位置,并且将空的果堆删除就可以 阅读全文
摘要:
#include <cstdio> #include <iostream> #include <algorithm> void highPrecision (int N ); int a[50000] = {0, 1}, length = 1; //开辟一个大的数组,全局变量length记录长度 i 阅读全文
摘要:
排序是编程过程中经常遇到的操作,它在很大程度上影响了程序的执行效率。 7种常见的排序算法大致可以分为两类:第一类是低级排序算法,有选择排序、冒泡排序、插入排序;第二类是高级排序算法,有堆排序、排序树、归并排序、快速排序。 一、低级排序算法 1. 选择排序 排序过程:给定一个数值集合,循环遍历集合,每 阅读全文
摘要:
1,简介 STL是StandardTemplateLibrary的简称,标准模板库,惠普实验室开发的一系列软件的统称。它是由AlexanderStepanov、MengLee和DavidRMusser在惠普实验室工作时所开发出来的。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL 阅读全文
摘要:
相信对于二分查找的原理大家已经明白,接下来就是代码实现了 这样,这一个二分查找就完美的实现了!!! 更多代码请进入: https://github.com/tomatoschool 阅读全文
摘要:
关于本题目 由于题目原本不是树,而是图,而题目又问的是最短修好路得时间,如果是图,那么会有多条路联通两个节点,而其中必定有一条最短时间修好的路,那么最终必定是其中的包含的最小树,所以我们要生成最小树。 最小生成树之Kruskal算法 这个算法用到的方法是,先将所有边按照权重(此处是时间长短)排序,我 阅读全文
摘要:
简单的dp 这样简单的dp就写完了 阅读全文
摘要:
0. 序言 工作的需要,最近在接手一个C++项目。自己在校学习期间,因为懒惰,对于C++这样的巨型语言,是能躲就躲的,因此学的一知半解,导致现在工作时的无能为力。但是,指责所在,躲无可躲,只能做一些亡羊补牢之事。下面的一系列文章,就是自己边工作边学习的记录,算是学步时的点滴。内容会持续更新,有错误之 阅读全文