C语言中的排序法?Using namespace STD int main(){int a[10]cout<<“输入10个数字:”<<endl for(int i=0I<10i
C语言中的排序法?
Using namespace STD int main(){int a[10]cout<<“输入10个数字:”<然后将基准位置向右移动一位,重复上澳门金沙述操作,例如,以a[1]为基准,找出a[1]~a[9]中的最小值,与a[1]交换。当基位置移动到数组的最后一个元素时,排序结束(此时,基左侧的所有元素都按增量排序,并且基是最后一个元素,因此排序完成)。bubble算法与快速排序算法的区别在于:bubble算法,如果在每次比较后发现较小的元素,则交换相邻的两个元素。要排序的元素被视为垂直排列的“气泡”,较小的元素较轻,因(pinyin:yīn)此必须向上浮动
在气泡排序算法中,我们需要对(繁体:對)“气泡”序开云体育列进行多次处理。所谓一次加工,就是要自下而上检查顺序,并时刻注意相邻两个元素的顺序是否正确。如果发现两个相邻元素的顺序不对,即“轻”元素在下面,则交换它们的位置。显然,处理一次后,最轻的元素会浮动到最高位置;处理两次后,最轻的元素会浮动到下一个最高位置
在第二遍中,由于最高位置的元素已经是最轻的元素,因此无需检查。一般来说,在第i次通过期间,不必检查第i个高位置上方的元件,因为它们在上一次i-1通过之后已正确排列。排序算法的改进是:首先,我们不急于改变位置。首先,我们从[1]中逐个检查哪个数是最小的,然后记下这个数的位置P
扫描之后,我们交换a[P]和a[1]。此时,从a[幸运飞艇1]到a[10]的最小数据将变为前位置。因此,选择sort只需要对数组的每次扫描进行一次真正的交换,而冒泡可能需要多次。比较【pinyin:jiào】的次数是相同的
实际上,这取决于您声明的变量的数量。所选元素声明了比冒泡元素多的一个元素来存储最小(或最大)元直播吧素的下标。直接比较后{练:hòu}起泡。
本文链接:http://21taiyang.com/SoccerSports/308333.html
选择排序[pinyin:xù]算法c语言代码转载请注明出处来源