问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

冒泡排序,选择排序,插入排序的相同点和区别

发布网友 发布时间:2022-04-28 22:16

我来回答

2个回答

热心网友 时间:2022-04-23 13:59

是这样的 区别主要在交换的方式上 每一轮都把最大或最小的元素筛选出来放在相应的位置上 这是相同的 但是 对于每一轮 比如第一轮 要把1~n 中最大的那个放到n这个位置 冒泡法每次比较和移动相邻的两项 而选择排序每次交换当前项和第n项 我把代码写出来你就懂了: 冒泡: for i:=1 to n-1 do if (a[i]>a[i+1]) then swap(i,i+1); 选择: for i:=1 to n-1 do if (a[i]>a[n]) then swap(i,n); (swap 表示交换) 总的来说,两种排序比较的次数是相同的 但交换的次数,选择排序是更少的 虽然两者的时间复杂度都是 O(n^2) 但通常,选择排序更快一点

热心网友 时间:2022-04-23 15:17

冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。如此下去,重复以上过程,直至最终完成排序。 public class Paixu { public static void main(String[] args) { int [] a = {2,6,4,5,1,7,3}; int i = 0; int j = 0; int n = 0; for(i= 0;ia[j+1]){ n = a[j]; a[j] = a[j+1]; a[j+1] = n; } } } for ( i = 0; i < a.length; i++) { System.out.println(a[i]); } } } 直接选择排序(Straight Select Sorting) 也是一种简单的排序方法,它的基本思想是:第一次从R[0]~R[n-1]中选取最小值,与R[0]交换,第二次从R{1}~R[n-1]中选取最小值,与R[1]交换,...., 第i次从R[i-1]~R[n-1]中选取最小值,与R[i-1]交换,.....,第n-1次从R[n-2]~R[n-1]中选取最小值,与R[n-2]交换,总共通过n-1次,得到一个按排序码从小到大排列的有序序列. public class Paixu { public static void main(String[] args) { int [] a = {2,6,4,5,1,7,3}; int i = 0; int j = 0; int n = 0; for(i= 0;ia[j]){ n = a[i]; a[j] = a[i]; a[i] = n; } } } for ( i = 0; i < a.length; i++) { System.out.println(a[i]); } } }
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
谷歌浏览器怎么设置成中文_谷歌浏览器设置中文语言 【谷歌浏览器技巧】谷歌浏览器如何更改语言? 史上最全ETF全解 证券ETF是深市的吗 怎样把莲藕肉丸子做的好吃? 高三语文小说赏析小说形象分析与答题技巧 人物形象题答题技巧 借助什么分析小说的人物形象 脖子旁边疼是什么原因 在群里不是好友怎么把群里人建另一个群 关于简单选择排序、直接插入排序和冒泡排序 win7怎么在“我的电脑”里添加快捷方式 谁能帮我具体分析下插入排序、冒泡排序、选择排序三种方法的优劣?着 ... win7怎么添加“我的电脑”快捷方式到桌面上侧? 上海市27年公令2023年退休养老金拿多少 上海退休金计算规定 在上海工作41年今年退休养老金多少? 上海私企退休金每月多少钱 自己手机双卡双待没钱了怎么查询自己手机号码 王震宇的发表的主要文章目录 上海2万工资退休后养老金多少 上海退休工资一般多少 双卡双待的手机查自己的卡号怎么查? 上海退休人员养老金 上海自由职业退休能拿多少钱 上海社保现在每月交2256元退休金是多少? 双卡双待手机怎么知道是那个号码来电了? 2020年上海退休养老金计算方法 我现在使用的是双卡双待手机,现在把两张手机卡弄混了,有什么办法可以区分两张卡那个手机号码呀? 上海最低退休工资是多少钱一个月 win10怎么添加我的电脑快捷方式到桌面上 写排序的几种算法,简单选择排序,直接插入排序,冒泡排序,详细点 冒泡排序选择排序插入排序比较 谁能帮我具体分析下插入排序,冒泡排序 高分咨询:问用冒泡法和选择法分别实现对数组的排序,请举出些实例 编写程序,实现三种排序算法(选择、插入、冒泡) ...插入排序、希尔、冒泡排序、快速、选择排序算法,并计算每种排序算法... 请用选择排序算法,冒泡排序算法和插入排序算法三种算法,排列下列数:14 7 23 31 4 完成直接插入排序、简单选择排序和冒泡排序, 选作其它排序算法, 了解... 输入10个整数,分别用冒泡排序,简单选择排序和直接插入排序算法对其进行排序输出。求大神,紧急。 冒泡排序和插入排序以及选择排序 写出冒泡排序选择排序插入排序归并排序快速排序在最坏最坏及平均情况... 你们生病怎么跟领导请假 ? 作业 使用O分析比较名次排序、选择 排序、冒泡排序、插入排序最好 和最... C语言实现冒泡排序,选择排序,插入排序及其移动次数 孩子生病向领导请假条怎么写 小孩生病了怎么跟园长请假 孩子老是反复发烧怎么和老师请假了? 跟领导请假理由 一周岁宝宝生日送什么礼物好