算法/数据结构
文章平均质量分 79
love__coder
新博客:http://info.51rtb.cn
新浪微博:http://weibo.com/lovecoder
展开
-
鸡尾酒排序Linux下c 实现
很久很久以前,曾经写了个blog:冒泡排序 Linux下c 实现 . ,这次再show个冒泡排序的变种:鸡尾酒排序。 鸡尾酒排序在排序时,从两个方向在序列中排序。先找到最大的数字放到最后一位,然后找到最小的数字,放到第一位;然后再找到第二大的数字放到倒数第二位,再找到第二小的数字放到第二位。以此类推,直到完成排序。详细实现,请参阅下面的关键代码: 1、排序头文件:cocktailSor原创 2012-08-22 13:13:14 · 1353 阅读 · 0 评论 -
选择排序Linux下c 实现
选择排序,将待排序序列分为两个序列:已排序序列和未排序序列。每次从未排序序列中,选择一个最小的元素,存放在到已排序序列的最后,直到所有元素排序完毕。关键代码如下: 1、选择排序头文件:selectSort.h #ifndef SELECTSORT_H #define SELECTSORT_H extern void selectSort(int *pArr, const int原创 2012-08-29 09:45:14 · 1256 阅读 · 0 评论 -
冒泡排序 Linux下c 实现
最近有个想法:工作之余,在linux下,用c/c++把常用的算法重写一遍。当然,对算法的认识,我仅限于皮毛,我不可能超越那些前辈先知,但我仍想,用自己的方式演示一遍,只当自娱自乐吧!秉承一贯的原则,不讲大道理,只演示关键代码demo,开始算法之旅的第一个算法-----冒泡排序。 1、编辑文件BubbleSort.c,内如如下: #include void bubbleSort(int原创 2012-03-01 09:33:40 · 4317 阅读 · 2 评论 -
直接插入排序Linux下c 实现
直接插入排序把待排序序列分为两个序列:一个有序序列和一个无序序列。每次排序时,取无序序列的第一个元素,从有序序列尾部向前扫描,比较有序序列的元素,并把该元素插入到有序序列的合适位置,使有序序列继续保持有序并增长。下面给出关键代码: 1、插入排序头文件:InsertSort.h #ifndef INSERTSORT_H #define INSERTSORT_H extern v原创 2012-08-24 10:10:28 · 1754 阅读 · 0 评论 -
奇偶排序Linux下c 实现
奇偶排序又叫奇偶换位排序,是通过比较数组中相邻位置(奇-偶)的两个元素,如果奇偶对第一个大于第二个,则交换,重复该操作。然后,用类似的方式,依次比对所有偶奇对的元素。下面给出奇偶排序的实现代码: 1、奇偶排序头文件:oddEvenSort.h #ifndef ODDEVENSORT_H #define ODDEVENSORT_H #include extern void原创 2012-08-28 10:06:09 · 1714 阅读 · 0 评论 -
希尔排序Linux下c 实现
这次,我们谈论下希尔排序,希尔排序也叫递减增量排序算法。步长也是影响希尔排序的一个重要因素,我们这里主要用Marcin Ciura设计的步长。关键代码如下: 1、希尔排序头文件:shellSort.h #ifndef SHELLSORT_H #define SHELLSORT_H extern void shellSort(int * pArr, const int length); #原创 2012-09-29 16:00:28 · 2681 阅读 · 0 评论 -
快速排序Linux下c 实现
这次、给出快速排序的实现,主要代码如下: 1、排序头文件:quickSort.h #ifndef QUICKSORT_H #define QUICKSORT_H extern void quickSort(int *pArr, int length); #endif 2、排序源文件:quickSort.c #include "quickSort.h" void qu原创 2012-09-17 15:36:08 · 3007 阅读 · 0 评论 -
梳排序Linux下c 实现
梳排序改良自冒泡排序和快速排序,是不稳定排序算法。梳排序的递减率关系着算法的效率,递减率常常使用1.3,也有人提议用1.247330950103979。下面给出关键代码: 1、梳排序头文件: combSort.h #ifndef COMBSORT_H #define COMBSORT_H #define SHRINK_FACTOR 1.3 #include ex原创 2012-09-18 15:11:50 · 2498 阅读 · 0 评论