1.插入排序算法插入排序的基本思想是在遍历数组的过程中,假设在序号 i (i>=1)之前的元素即 [0..i-1] 都已经排好序,本趟需要找到 i 对应的元素 x 的正确位置 k ,并且在寻找这个位置 k 的过程中逐个将比较过的元素往后移一位,为元素 x “腾位置”,最后将 k 对应的元素值 ...
冒泡算法。 冒泡算法是最基础的一个排序算法,每次使用第一个值和身后相邻的值进行比较,如果是升序将大数向左边交换,降序则向右边交换。最终将大数移动到一边,最终排成一个序列: public class Sorting public void BubbleSorting int arr new int Random rd new Random for int i i lt arr.Length i a ...
2018-08-05 19:50 2 9048 推荐指数:
1.插入排序算法插入排序的基本思想是在遍历数组的过程中,假设在序号 i (i>=1)之前的元素即 [0..i-1] 都已经排好序,本趟需要找到 i 对应的元素 x 的正确位置 k ,并且在寻找这个位置 k 的过程中逐个将比较过的元素往后移一位,为元素 x “腾位置”,最后将 k 对应的元素值 ...
1、冒泡排序 (英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端 ...
相同点: 冒泡排序和插入排序都是把数组分成两块,一块是已排好序,剩下的是未排好序。按照标准的时间复杂度和空间复杂度来算,两个算法都是O(n^2)时间复杂度,和常数空间复杂度。两个算法都是通过一步一步的移动元素达到最后的位置。 有两点差异我比较关注:元素比较的次数和元素移动的次数。 元素比较次数 ...
如何分析一个排序算法? 分析一个排序算法的三要素:排序算法的执行效率、排序算法的内存消耗以及排序算法的稳定性。 排序算法的执行效率 对于排序算法执行效率的分析,一般是从以下三个方面来衡量: 最好情况、最坏情况、平均情况时间复杂度 时间复杂度的系数、常数、低阶 比较次数和交换 ...
测试结果: 时间单位:毫秒 1. 冒泡排序:5万个元素的排序:4157。 50万:430255。 100万:1644079 2. 选择排序:5万:727。 50万:74253。 100万:281276 3. ...
将数组剩下的最大值找出来放到数组的后面。冒泡排序的时间复杂度O(n2)。 2、选择排序 选择排序与 ...
冒泡排序 原理: 从第一个数据开始,与第二个数据相比较,如果第二个数据小于第一个数据,则交换两个数据的位置。 指针由第一个数据移向第二个数据,第二个数据与第三个数据相比较,如果第三个数据小于第二个数据,则交换两个数据的位置 ...
1.插入排序; 1.从第一个元素开始,该元素可以认为已经被排序2.取下一个元素tem,从已排序的元素序列从后往前扫描3.如果该元素大于tem,则将该元素移到下一位4.重复步骤3,直到找到已排序元素中小于等于tem的元素5.tem插入到该元素的后面,如果已排序所有元素都大于tem,则将tem插入 ...