自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 Dijkstra算法

Dijkstra算法:基本思想是每次找到离源点最近的一个顶点,然后以该顶点为中心进行扩展,通过边来松弛源点到其余各个顶点的路程,最终得到源点到其余所有点的最短路径。代码:#include <iostream>#include <vector>using namespace std;const int MAX = 99999;int main(){ int ...

2018-04-07 17:40:44 207

原创 数组实现邻接表

#include <iostream>#include <vector>using namespace std;int main(){ int n, m; //n表示顶点个数,m表示边数 std::cin >> n >> m; std::vector<int>u(m + 1); //起点集合 std::vecto...

2018-04-07 16:19:31 339

原创 Bellman-Ford算法的队列优化

Dijkstra算法求最短路径的图时不能有负权边,因为扩展到负权边的时候会产生更短的路径,有可就已经破坏了已经更新的点路程不会改变的性质。Dijkstra算法虽然好,具有良好的扩展性,扩展后可以适应很多问题,高效的A*算法就是有Dijkstra算法扩展来的,但Dijkstra算法无法解决负权边,这是最大的弊端。Bellman-Ford算法正好弥补Dijkstra算法的这个弊端,可以堪称完美最短路径...

2018-04-07 15:38:04 349

原创 快速排序

快速排序:(小->大),首先在序列中找出一个数作为基准数,一般第一次会选择序列的首元素,再选择左右两个探针,一般第一次会选择序列的首尾下标作为左右探针,从两端开始探测,起始探测方向随意,但一定得是基准数的对面。为什么呢?(比如,序列(6,1,2,7,9)基准数选则首下标,则探测方向应从右侧开始,这样才能保证左右探针在相遇的时候,右边的都是大于基准数的,因为如果从左测开始探测的话,碍于(左探针...

2018-04-06 17:30:19 148

原创 堆排序

#include <iostream>#include <vector>#include <algorithm>using namespace std;/* 1).从小到大排序,建立最小堆 * 然后每次删除顶部元素并将顶部元素输出或存储起来 * 直到堆空为止 * 2).从小到大排序,建立最大堆 * 最大对建好后,最大元素在vec[1],vec...

2018-04-01 11:08:42 144

原创 2017腾讯校招暑期实习生笔试题1

构造回文给定一个字符串s,你可以从中删除一些字符,使得剩下的串是一个回文串。如何删除才能使得回文串最长呢? 输出需要删除的字符个数。输入描述:输入数据有多组,每组包含一个字符串s,且保证:1<=s.length<=1000. 输出描述:对于每组数据,输出一个整数,代表最少需要删除的字符个数。示例1输入abcdagoogle输出22解题思路:            找到两个字符...

2018-03-23 11:56:04 3823

原创 2017腾讯校招暑期实习生笔试题3

题目: 小Q今天在上厕所时想到了这个问题:有n个数,两两组成二元组,差最小的有多少对呢?差最大呢?输入描述: 输入包含多组测试数据。有趣的数字小Q今天在上厕所时想到了这个问题:有n个数,两两组成二元组,差最小的有多少对呢?差最大呢?输入描述:输入包含多组测试数据。 对于每组测试数据: N - 本组测试数据有n个数 a1,a2…an - 需要计算的数据 保证: 1<=N<=10000...

2018-03-22 21:04:50 714

原创 2017腾讯校招暑期实习生笔试题2

字符移位小Q最近遇到了一个难题:把一个字符串的大写字母放到字符串的后面,各个字符的相对位置不变,且不能申请额外的空间。 你能帮帮小Q吗?输入描述:输入数据有多组,每组包含一个字符串s,且保证:1<=s.length<=1000.输出描述:对于每组数据,输出移位后的字符串。输入例子:AkleBiCeilD输出例子:kleieilABCD解题思路    如果碰到大写字母,就把这个大写字母放...

2018-03-22 19:54:47 580

原创 智力竞赛 编程题解析

#1285 : 智力竞赛时间限制:5000ms单点时限:1000ms内存限制:256MB描述小Hi、小Ho还有被小Hi强拉来的小Z,准备组队参加一个智力竞赛。竞赛采用过关制,共计N个关卡。在第i个关卡中,小Hi他们需要获得Ai点分数才能够进入下一关。每一关的分数都是独立计算的,即使在一关当中获得超过需要的分数,也不会对后面的关卡产生影

2017-04-09 23:08:33 497

原创 图的最小生成树

最小生成树:一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边。目前用Kruskal(克鲁斯卡尔)算法或prim(普里姆)算法求出。先说以下Kruskal算法:要让n个顶点的图连通,那么至少需要n-1条边,如果一个连通无向图不包含回路,那么就是一棵树,图的最小生成树就是让边的总长度之和最短,我们首先肯定从最小的开始选,依次按照边的顺序...

2017-01-14 16:30:40 245

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除