龙空技术网

C语言选择排序算法简介 最直观的排序算法,C语言实现#C语言

公子扶苏 58

前言:

目前朋友们对“c语言选择法概念”大体比较关注,朋友们都想要分析一些“c语言选择法概念”的相关知识。那么小编同时在网络上汇集了一些关于“c语言选择法概念””的相关知识,希望看官们能喜欢,看官们一起来了解一下吧!

最好学的排序:选择排序。

初学C语言排序算法的时候,我感觉在常用的(排序)算法里选择排序是最好学的排序(算法),最好理解的排序。选择排序的原理非常简单,它就是拿数组的第一个元素与后面的元素一一比较,后面如果有更小的元素就把更小的元素交换到最前面第一位排序完成,然后再把数组的第二位和后面的一一比较,如果有比第二位还小的交换到第二位,以此类推,最后所有的元素都能保证它的顺序是从小到大。

这个讲解起来比较复杂,我感觉直接用代码更方便一点。首先声明一个数组,然后用双重循环来实现(排序)。第1重循环变量叫i,第2层循环变量叫j。

·它是这样的,首先要用第1个元素与后面的元素一一比较,它是第一个元素,用i,它的下标要从0开始,变量i要小于4,因为这个数组最大的下标就是4,而锁定的这个元素(下标)最大只能到3,3和4比较,4下标为4的元素就没有可以和它比较的元素了,所以不能等于4。

·第二层循环锁定一个元素之后,要把它和后面的元素一一比较,所以这个i要等于i加一,它从i加一开始小于5,就是小于数组的长度,再加j,然后if进行判断。

·先锁定一下ai,如果后面有比ai更小的值就交换,如果没有就不交换,来保证ai和它后面的元素中是最小的,这是普通的交换。

·然后再输出一下,看看它(代码)是不是真的排序成功了。为了对齐,我让它占5位,%5d,不足5位,前补空格,变异一下。

·(变量)没有声明,在这里声明可以,也可以放在这里(然后不管了),就放在这里,12345排序完成。

标签: #c语言选择法概念