算法
soft2967
这个作者很懒,什么都没留下…
展开
-
选择排序
选择排序(Selection Sort)的基本思想是:每一趟从待排序的记录中选出关键字最小的记录,顺序放在已排好序的子文件的最后,直到全部记录排序完毕。 常用的选择排序方法有直接选择排序和堆排序。直接选择排序(Straight Selection Sort)1、直接选择排序的基本思想 n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果: ①初始状态:无序区原创 2011-06-28 15:52:00 · 362 阅读 · 0 评论 -
归并排序
归并排序(Merge Sort)是利用"归并"技术来进行排序。归并是指将若干个已排序的子文件合并成一个有序的文件。两路归并算法1、算法基本思路 设两个有序的子文件(相当于输入堆)放在同一向量中相邻的位置上:R[low..m],R[m+1..high],先将它们合并到一个局部的暂存向量R1(相当于输出堆)中,待合并完成后将R1复制回R[low..high]中。(1)合并过程原创 2011-06-28 15:56:00 · 361 阅读 · 0 评论 -
插入排序
插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。 本节介绍两种插入排序方法:直接插入排序和希尔排序。直接插入排序基本思想1、基本思想 假设待排序的记录存放在数组R[1..n]中。初始时,R[1]自成1个有序区,无序区为R[2..n]。从i=2起直至i=n为原创 2011-06-28 15:57:00 · 482 阅读 · 0 评论 -
交换排序
交换排序的基本思想是:两两比较待排序记录的关键字,发现两个记录的次序相反时即进行交换,直到没有反序的记录为止。 应用交换排序基本思想的主要排序方法有:冒泡排序和快速排序。冒泡排序1、排序方法 将被排序的记录数组R[1..n]垂直排列,每个记录R[i]看作是重量为R[i].key的气泡。根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R:凡扫描到违反本原则的轻气泡,原创 2011-06-28 16:00:00 · 702 阅读 · 0 评论 -
通用插入排序
#include #include #include struct node{ int key; int data;};bool InsertSort(void* data,size_t size,size_t esize,int (*compare)(void* key1,void* key2)){ char* a = (char原创 2012-12-01 22:54:06 · 680 阅读 · 0 评论 -
位图bitmap的实现作用
#include #include //位图类class CBitMap{public: CBitMap(size_t count) { if (count { count = 1; } m_count = count; m_bitmap = new unsigned char[m_co原创 2012-12-02 14:53:25 · 2352 阅读 · 0 评论 -
游戏后台Cache技术和运用
///////////////////////////////////////////////////////////////////////////*1.为什么需要cache,有那些好处?从下面几点考虑后台程序会创建大量的对象,也就是动态分配内存,通常的做法是new XXX。然后在不用的时候在delete XXX。这样new和delete会消耗一定cpu,最重要的是在长期ne原创 2013-01-28 22:15:24 · 1017 阅读 · 0 评论 -
哈希表
/*hash在实际工程里是用的很多的,主要是hash提供了O(1)常量的存储和查找时间那如何自己设计一个hash需要考虑哪些方面了?hash有2种实现方式,一种是链式的hash,还有一种是开地址hash方面 下面来看看开地址hash如何实现负载因子 a = n/m n为元素个数 m为槽个数在链式hash里a表示在均匀散列的情况下,每个槽存放元素个数,也就是平均找出次数原创 2013-02-03 22:10:29 · 620 阅读 · 0 评论 -
数组链表
/*数组:在删除的时候需要移动数组元素开销大链表:无法使用预先分配固定内存,并且无法使用索引方式在O(1)复杂度下删除数组链表优点:1.在插入O(1),删除的复杂度都是O(N),带索引删除复杂度为O(1)2.并且可以预先把需要的内存分配好*/class CAList{public: CAList(unsigned int Count,unsigned int Elem原创 2013-08-25 21:48:21 · 5826 阅读 · 0 评论