- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 文章标题
dijkstra 算法 单源最短路径算法 适用于有向图,无向图,图中不能出现负边 算法思想: 把源点到各点的距离初始化为无穷大 定义到源点的最短距离为0,把源点塞入一个优先队列中 每次都能从优先队列中取出一个最短距离,从优先队列中取出队头,如果队头的最短距离小于距离矩阵距离,那么更新距离矩阵,把该队头节点的扇出点放到优先队列中。已经算出最短距离的点,不再扩充,避免死循环。 算法特点:带优先队列的广
2017-05-12 20:30:08 170
原创 next_permutation实现原理
函数实现原理如下: 在当前序列中,从尾端向前寻找两个相邻元素,前一个记为*i,后一个记为*t,并且满足*i < *t。然后再从尾端寻找另一个元素*j,如果满足*i < *j,即将第i个元素与第j个元素对调,并将第t个元素之后(包括t)的所有元素颠倒排序,即求出下一个序列了。
2016-11-09 09:41:50 223
原创 排序算法时间效率测试
对快速排序,归并排序,希尔排序的时间效率进行了一个测试。 归并排序果然厉害,我的希尔排序写的估计有点问题,太慢。#include <iostream> #include <algorithm> #include <ctime> #include <fstream> using namespace std; //quick sort int partition(int *data, int firs
2016-11-02 11:35:12 754
原创 A 星算法总结
A 星算法总结A 星算法FPGA EDA工具VPR布线器所采用的布线算法,面试滴滴的时候听说他们的路径规模用的也是A 星算法,感觉这个算法还蛮厉害的,对这个算法进行一个总结。 文章http://www.tuicool.com/articles/MJrYz26 对这个算法用语言描述的很好,搬运下: A星寻路算法显然是用来寻路的,应用也很普遍,比如梦幻西游。。。算法的思路很简单,就是在bfs的
2016-10-31 22:48:00 941
原创 快速排序
快速排序的原理是非常明显的,但是这个算法细节特别多。 快排主程序,基本上都是这样的: void quick_sort(vector &num, int first, int last) { if (first >= last) { return; } else { int index = partition(num, first, last); quick_sort(num,
2016-09-25 21:40:13 227
原创 二分查找法
int binarySearch(vector &nums, int first, int last, int tar) { int mid = 0; while (first mid = first + (last - first) / 2; //(first + last) / 2 可能会溢出 if (tar == nums[mid]) { return mid; } els
2016-09-20 12:27:00 247
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人