冒泡法和选择法区别 VB冒泡排序法和选择排序法的优缺点比较?
VB冒泡排序法和选择排序法的优缺点比较?
这两种算法效率很低。通常,我们使用一个与数据大小相关的时间渐近函数来评价算法的时间效率,即算法的时间复杂度。两种算法的时间复杂度为O(n^2),基于比较的排序算法的最佳复杂度为O(nlogn)。堆排序、合并排序和快速排序的预期复杂度可以达到o(最坏情况下,堆排序和合并排序的复杂度仍然是o(nlogn))]~。区别主要在于交换方式。在每一轮中,最大或最小的元素被过滤掉并放在相应的位置。这是相同的,但是对于每一轮,例如第一轮,1~n中的最大元素放在n气泡的位置:forI:=1ton-1do if(a[i]>A[i1]),然后WAP(i,i1)选择:forI:=1ton-1do if(a[i]>A[n]),然后WAP(i,i1)(swap表示交换),两种方法的比较次数相同,但交换次数较少。虽然两者的时间复杂度都是O(n^2),但一般来说,排序的选择比较快
主要区别是在交换的方式上,每一轮都会把最大或最小的元素过滤掉,放到相应的位置。这是相同的,但对于每一轮,如第一轮,1~n是选择气泡法:比较和移动两个相邻的项目,每次选择排序。每次交换当前项和第n项。我来写代码,你就会明白:Bubble:for I:=1 to n-1 do if(a[I]>A[I 1])then swap(I,I 1)select:for I:=1 to n-1 do if(a[I]>A[n])then swap(I,n)(swap)一般来说,这两种方法的比较时间是相同的,但交换次数较少。虽然这两种排序的时间复杂度都是O(n^2),但通常情况下,选择排序的速度更快
冒泡法和选择法区别 选择排序法和冒泡法 选择法和冒泡法一样吗
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。