- 博客(6)
- 资源 (7)
- 收藏
- 关注
原创 【数据结构与算法】排序算法之六:快速排序
一 快速排序排序算法中的奥斯卡,诺贝尔奖,当属快速排序!快速排序是20世纪十大算法之一!!!!!!!!1 基本思想前面提到冒泡排序,它是一种交换排序,堪称最慢的排序算法。可是,物极必反,快速排序是冒泡排序的升级加强版,同属于交换排序类。以”空间“换时间,快速排序不是相邻元素的交换,而是加大了比较和交换的距离,从而减少总的比较次数和移动交换次数。就拿考试分数来说,首先,6
2015-11-24 21:57:54 653
原创 【数据结构与算法】排序算法之五:归并排序
一 归并排序1 基本思想归并排序和堆排序一样用到了完全二叉树。古语有云:破而后立。归并排序的思想就是如此。其步骤如下:(1) 将待排序数组按”二分“的规则”打破“,一直到子数组的长度为1为止(2) ”立“的过程就是将子数组两两归并成有序数组,如此重复,直到得到按序排列的数组。2 实现首先,我们来看”打破“的代码。void Merge_Sort(SortArra
2015-11-24 21:37:47 556
原创 【数据结构和算法】排序算法之四:希尔排序
一 希尔排序(1) 基本思想就拿插队来说冒泡排序是挨个询问插队插入排序是看准位置一次性插队那么希尔排序就是跳着插队。希尔排序的思想其实很简单:以一个递减的增量序列来对带排序数组进行比较替换。相对于冒泡和插入排序减少了比较次数。(2)实现//希尔排序void Shell_sort(SortArray *A,int n){ int increment = n;
2015-11-23 21:31:25 815
原创 【数据结构和算法】排序算法之三:插入排序
一 插入排序(1) 思想在玩扑克牌的时候,我们不会像选择排序那样每次都从一堆牌中选择最小的来进行排序,而是没摸一张牌,然后插入现有的手牌中,那么此时现有的手牌就必须是有序的。插入排序的思想正是如此:每次将待排序元素插入现有的有序数组中,从而得到一个新的,个数增加1的有序数组。(2) 实现//插入排序void Insert_sort(SortArray *A , int
2015-11-23 20:49:40 1300
原创 【数据结构和算法】排序算法之二:选择排序和堆排序
一 选择排序(1)思想假设有十张扑克牌放在桌上,我们需要按从小到大的顺序拿到手上,每次只能选择一张牌拿到手上,那么每一次我们都必须从桌上的扑克牌中选择最小的牌拿起来,一次循环十次,这样就将扑克牌按从小到的顺序拿到手上了。这就是选择排序。(2)实现//选择排序//输入:待排序数组(A)和数组个数(n)//输出:按从小到大排序的数组(A)void Select_sort(Sor
2015-11-23 20:33:17 683 1
原创 【数据结构和算法】排序算法之一:冒泡排序
一.基本概念冒泡排序,即对相邻两个数进行比较,如果反序就交换位置,直到整个序列没有出现反序为止。二.C++实现(1).最基础的实现,对数组A中每一个相邻元素进行比较。void Bubble_sort(SortArray *A , int n){ int i , j , temp; for (i = 0 ; i < n-1 ; i++) { for (j = i+1;
2015-11-23 20:02:31 830
【Visual C++】游戏编程代码\【Visual C++】游戏编程学习笔记之九:回合制游戏demo(剑侠客VS巡游天神)
2015-03-21
【Visual C++】游戏编程代码\【Visual C++】游戏编程开发笔记六:多背景循环动画
2015-03-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人