C语言排序算法
mainn
本人是移动互联应用技术专业,选择嵌入式开发方向。声明:博文的编写,主要参考网上资料,并结合个人见解,仅供学习、交流使用,如有侵权,请联系博主删除。...
展开
-
小甲鱼 P36 快速排序
小甲鱼 P36 快速排序 #include <stdio.h>void quick_sort(int array[], int left, int right){ int i = left, j = right; int temp;//临时值 int pivot;//基准点 pivot = array[(left + right)/2];//基准点 ...原创 2018-09-30 20:10:15 · 414 阅读 · 0 评论 -
小甲鱼 排序算法 快速排序
小甲鱼 排序算法 快速排序 #include <stdio.h>//交换 void swap(int k[], int low, int high){ int temp; temp = k[low]; k[low] = k[high]; k[high] = temp;}//计算基准点的函数//把将所有小于基准点的所有元素放在基准点的左边//把将所...原创 2018-10-11 10:40:30 · 535 阅读 · 1 评论 -
图解排序算法(一)之3种简单排序(选择,冒泡,直接插入)
https://www.cnblogs.com/chengxiao/p/6103002.html排序是数据处理中十分常见且核心的操作,虽说实际项目开发中很小几率会需要我们手动实现,毕竟每种语言的类库中都有n多种关于排序算法的实现。但是了解这些精妙的思想对我们还是大有裨益的。本文简单温习下最基础的三类算法:选择,冒泡,插入。 先定义个交换数组元素的函数,供排序时调用 /** ...转载 2018-10-12 08:21:24 · 260 阅读 · 0 评论 -
C语言 快速排序
快速排序是冒泡排序的改进版,也是最好的一种内排序,在很多面试题中都会出现,也是作为程序员必须掌握的一种排序方法。思想:1、在待排序的元素任取一个元素作为基准(通常选第一个元素,但最好的选择方法是从待排序元素中随机选取一个作为基准),称为基准元素;2、将待排序的元素进行分区,比基准元素大的元素放在它的右边,比其小的放在它的左边;3、对左右两个分区重复以上步骤直到所有元素都是有序的;...原创 2018-06-19 21:20:35 · 272 阅读 · 0 评论 -
小甲鱼 排序算法 冒泡排序
小甲鱼 排序算法 冒泡排序 冒泡排序基本思想:两两相邻记录的关键字,如果反序则交换,直到没有反序的记录为止(PS 反序:大在前,小在后) 下面的代码不是真正意义的冒泡排序(因为比较的不是相邻)//BubbleSort冒泡排序#include <stdio.h>void BubbleSort(int k[], int n){ int i, j,...原创 2018-10-10 17:18:06 · 653 阅读 · 0 评论 -
小甲鱼 排序算法 选择排序
小甲鱼 排序算法 选择排序 虽然选择排序 和 冒泡排序 进行的比较次数是一样的,但是选择排序 比 冒泡排序 进行移动的次数少,效率更高 选择排序://selectsort.c#include <stdio.h>void SelectSort(int k[], int n){ int i, j, min, temp, count1=0, count2=0;...原创 2018-10-10 17:21:23 · 476 阅读 · 0 评论 -
小甲鱼 排序算法 直接插入排序
小甲鱼 排序算法 直接插入排序 在这之间排序算法的时间复杂度是O(n2),希尔排序突破了O(n*logn) 直接插入排序算法(Straight Insertion Sort)的基本操作是将一个记录插入到已经排好序的有序表中,从而得到一个新的、记录数增加1的有序表。 直接插入排序算法的效率 不会比冒泡排序和选择排序差 #include <stdio.h>...原创 2018-10-10 20:30:33 · 414 阅读 · 0 评论