插入选择
原创 2021-07-05 16:02:05
294阅读
一直插入排序选择排序弄混掉,这里解释以下 因为插入排序是稳定的,选择排序是不稳定的 这里有两张图片就可以表示 ...
转载 2021-10-10 14:23:00
142阅读
2评论
插入排序,选择排序
原创 2019-07-14 18:31:00
149阅读
这篇博客是对极客时间上王争课程 —— 数据结构与算法之美的个人学习总结。
原创 2021-12-10 15:51:17
145阅读
一、冒泡排序 基本介绍: 冒泡排序(Bubble Sorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前向后移动,就像水底下的气泡一样逐渐往上冒。 注意优化:因为排序的过程中,各元素不断接近自己的位置,如果一趟比 ...
转载 2021-08-31 16:39:00
120阅读
2评论
聆听 沉淀 传播… 关注微信公众号【架构技术之美】,学习更多技术和学习资料文章目录插入排序选择排序冒泡排序插入排序package com.nobody.sort;/** * @author Mr.nobody * @Description 插入排序 * @date 2020/9/5 */public class Code01_InsertionSort { public static void insertionSort(int[] arr) { // 数组.
排序 十大经典排序算法总结(Java实现+动画)_meibenxiang的博客-CSDN博客_十大排序算法 说明 简单的说一下几个排序,都是从左往右排序,从小到大,冒泡排序直接双重for循环,选择排序需要声明minIndex,快速排序需要声明num和j 1 冒泡排序 最基本的排序,牢记数组长度为N, ...
转载 2021-10-31 19:33:00
105阅读
2评论
聆听 沉淀 传播… 关注【架构技术之美】,
原创 2022-02-04 13:31:44
85阅读
冒泡排序 冒泡排序算法的运作如下:(从后往前)比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较 package com.algorithm;/** * 冒泡排...
原创 2023-05-16 00:17:22
56阅读
选择public static void selectionSort(int[] arr){ if (null==arr||arr.length<2) return; /* 每次选出最小值,外循环0~N-1 每个内循环i~N-1 */ for (int i = 0; i < arr.length; i++) {
原创 2023-04-14 23:47:00
135阅读
冒泡排序选择排序插入排序
原创 2016-10-11 16:31:19
13阅读
冒泡排序:冒泡排序基本思想:两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止。时间复杂度:如果是按照优化后的算法来看,最优的就是已经有序,没有数据交换只有比较,时间复杂度是O(n).当最坏的情况,就是待排序表是逆序的情况,此时需要比较1+2+3+...+(n+1) = n(n-1) /2 次,并坐等数量级的记录移动,总的时间复杂度为O(n^2).实现代码:// 2020/7/28
原创 2023-02-03 07:52:29
63阅读
1.选择排序 1.何为选择排序: 以升序为例: 1.将数组分为两个子集,排序的和未排序的,每一轮从未排序的子集中选出最小的元素,放入排序子集. 2.重复上述步骤,知道数组有序 2.优化方式 1.为减少交换次数,每一轮可以先找到最小的索引,再每轮最后交换元素的位置 3.与冒泡排序比较 1.两者的时间复 ...
转载 2021-10-20 11:10:00
82阅读
2评论
#include#include#include#define N 20//直接插入排序void InsertSort(int a[],int n){ int i,j,temp; for(i=1;i<N;i++){ temp = a[i]; j = i-1; while(j>=0 && a[j]>temp){ a[j+1] = a[j]; j--; } a[j+1]
原创 2022-07-19 09:54:34
34阅读
冒泡排序选择排序插入排序详解
改章节笔者在深圳喝咖啡的时候突然想到的...这段时间就有想写几篇关于插入排序冒泡排序的文章,所以回家到之后就奋笔疾书的写出来发表了每日一道理 聪明人学习,像搏击长空的雄鹰,仰视一望无际的大地;愚笨的人学习,漫无目的,犹如乱飞乱撞的无头飞蛾;刻苦的人学习,像弯弯的河流,虽有曲折,但终会流入大海;懒惰的人学习,像水中的木头,阻力越大倒退得越快。using System;using System.Diagnostics;namespace TestCArray{ class Program { static void Main(string[] args) {...
转载 2013-04-24 21:34:00
265阅读
2评论
编程或开发比较常用的几种排序方式,文章包含的排序的原理描述和实际的代码,比较适合初学者。
原创 2013-08-17 23:12:19
854阅读
一、冒泡排序 依次比较相邻的两个数,将小数放在前面,大数放在后面。即首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复以上过程,直至最终完成排序。   冒泡排序是稳定的。算法时间复杂度是O(n ^2)。   程序实现示例 将数组从小到大排列 public voi
原创 2010-09-15 20:41:00
393阅读
文章目录​​冒泡排序​​​​选择排序​​​​插入排序​​​​希尔排序​​​​其他​​​​有序区​​​​时间复杂度(算法复杂度)​​ 虽然不是每个人都会用到算法,但是了解下算法,还是没坏处的。 关于各种排序算法的官方描述太复杂,所以直接用自己的语言。冒泡排序就像水里的气泡上浮一样。 相邻的2个元素比较。如果左边的大,就和右边的交换。效果是什么呢? 第一轮 相当于选老大,一定可以选出最大的,而且会放在
1.冒泡排序越小的数会慢慢的浮出水面(冒泡)一次性比较两个数,比较两个的大小描述:1. 比较相邻的两个元素。如果第一个比第二个大
原创 2022-08-10 17:00:50
80阅读
  • 1
  • 2
  • 3
  • 4
  • 5