
算法
加菲猫ooo
这个作者很懒,什么都没留下…
展开
-
插入排序
插入排序原理:第一步把第一个元素看做一个已经排序好的集合,后面的步骤就是在这个集合的适合位置不断补充元素的过程,我们以非递减方式来排序a[n]的元素,假设前面的 i-1个元素已经排序好,待排序元素为a[i], 而a[i] void InsertSort(int a[],int n) { int nFlag; for(int i=1;i<n;i++) { if(a[i]<a[i-1原创 2012-07-11 12:46:07 · 504 阅读 · 0 评论 -
写了个快排
快速排序的原理,我稍微解释一下:每次对一个给定区间内的元素做一次划分,直到最后整个区间内的元素都有序,每次在对一个特定区间元素划分时,划分后的结果是------返回“中间位置,中间位置左侧元素都小于或等于中间位置元素,而右边元素都大于或等于中间位置元素”,返回中间位置是为了下一次再做划分; int partition(int a[],int low,int high) { int key原创 2012-07-11 12:04:26 · 570 阅读 · 0 评论 -
一道AS3数据结构面试题
题目:给定一个数组,比如 arr = [2,9,1,3,6,4];实现一个函数ArrSum(arr:Array, sum:int),这个函数实现这样的功能:如果在这个数组中存在两个数的和值为sum,那么函数返回true,否则返回false;要求时间复杂度O(n^1); 简单的写了一下 package { import flash.display.Sprite; public c原创 2012-09-21 22:53:19 · 2387 阅读 · 0 评论 -
各种排序算法
天行健,君子以自强不息 常见经典排序算法 1.希尔排序 2.二分插入法 3.直接插入法 4.带哨兵的直接排序法 5.冒泡排序 6.选择排序 7.快速排序 8.堆排序 一.希尔(Shell)排序法(又称宿小增量排序,是1959年由D.L.Shell提出来的) /* Shell 排序法 */ #include void sort(int原创 2013-05-11 11:04:56 · 702 阅读 · 0 评论