算法
文章平均质量分 65
oliverOu
学习工匠精神
展开
-
数据实时排名
排行榜是很多软件的功能需求,比如我们常玩的各类游戏,视频直播,微博等等都有排行榜。现在的排行榜实现方式大都有这两种:1.定时排名,2实时排名,下面就让我来介绍我对实时排行榜的理解。实时排行有两个问题: 1. 如果数据量很大怎么做到实时排名? 2. 如果要实时调整排名数据怎么做到快速调整? 对于数据量小的程序可以在单个机器上完成就ok了,其实主原创 2015-03-25 16:19:33 · 4477 阅读 · 0 评论 -
A星算法理解
A星算法是一种探测性算法,实现需要关注的重点:二维地图数组,关闭列表,开放列表(小根堆),每个点的父节点。 二维地图数组用来存储地图上是否可通过的标记信息,假设现在要从地图的起始点A移动到目的点B,如何寻找到最短的路径呢?1. 把地图上的A点放入关闭列表中,然后将A点周围的可走点放入一个以小堆为结构的开放列表,并把它们的父节点指向A点。2. 计算周围可走点到A点的距原创 2015-03-27 18:07:16 · 1131 阅读 · 0 评论 -
code for 使用n个1,2,3进行加减运算,最后结果还是1,2,3
code for 使用n个1,2,3进行加减运算,最后结果还是1,2,3#include #include #include #include #include #include #include #include #include using namespace std;enum DATA_TYPE{DATA_TYPE_NUM原创 2015-05-19 19:40:55 · 481 阅读 · 0 评论 -
使用n个1,2,3进行加减运算,最后结果还是1,2,3
使用n个1,2,3进行加减运算,最后结果还是1,2,3。要求每次数据的运算规则都是随机的,结果值也是随机的。struct Data{int num; //所选的数字int type; //数据类型,包括数字(0),加号(1)和减号(2)int sum; //结果值};stack want;一.随机一个数n和结果值n Data t; t.num =原创 2015-05-19 18:23:29 · 452 阅读 · 0 评论 -
排序算法,快速排序,希尔排序,冒泡排序
排序算法模板,包括快速排序,希尔排序,冒泡排序快速排序:以数据为基准的左右二分排序希尔排序:缩小增量的排序需要使用可以直接下载文件使用/* *file : sort.h *author : oliver ou */#ifndef _AGILE_SORT_H_#define _AGILE_SORT_H_#include #include /原创 2015-05-21 20:24:30 · 440 阅读 · 0 评论 -
小根堆,大根堆,堆排序
小根堆,大根堆,堆排序下面用c++模板实现小根堆,大根堆,堆排序功能, 可以适用不同类型的数据,可以直接使用//file:heap.h#ifndef _AGILE_HEAP_H_#define _AGILE_HEAP_H_#include #include typedef bool(*EqualFunc)(void*, void*);typede原创 2015-05-20 21:19:50 · 1242 阅读 · 0 评论