算法
文章平均质量分 50
Dandelion_gong
这个作者很懒,什么都没留下…
展开
-
排序算法总结之冒泡排序
排序的方法很多,但每种算法都有自己的特点。本文总结了排序算法,排序算法最坏情况循环n *n 次,所以时间复杂度为O(n^2),而且算法稳定,易懂是该算法的特点冒泡排序: 冒泡排序易于理解和接收,它是通过随机给定一个数组,然后让下标i和j分别指向array[0]和array[1]。比较array[j]和array[j-1],如果array[j-1]>array[j],则互换并且j++。比较原创 2016-03-02 22:12:06 · 639 阅读 · 0 评论 -
排序算法总结之插入排序、选择排序
插入排序与选择排序的时间复杂度为O(n^2),而且算法都不稳定,因为它在排序过程中并不是将相邻的两个数进行交换。插入排序:它是用i和j分别记录两个下标。i从1开始,j从0开始到i-1为一次循环。插入算法的思想是,每次将array[i]插入到下标i之前的有序序列中的适当位置。插入排序的方法如下:手动步骤: eg:8 44 66 71 35 8 fo原创 2016-03-03 14:42:31 · 640 阅读 · 0 评论 -
排序算法总结之快速排序、归并排序、shell排序
快速排序:快排效率高,时间复杂度最理想为 O(nlogn) ,最差时间为O(n^2),该算法不稳定。其主要思想如下:快排是每次将序列第一个数当作一个参考值,分别将比参考值大的数放到参考值右侧,小于参考值的数放到参考值左边,将序列一分为二,对得到的两个数列再分别进行上述操作,直到排序完成。实现过程: 快排程序: 归并(分治)排序: 归并排序实质上是对将序列拆分为有序序列,然后对有序序列进行合并,原创 2016-03-04 23:06:19 · 1666 阅读 · 0 评论