赞
踩
大家好!今天来实现冒泡排序,采用函数的方式。
冒泡排序:冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。
首先,思路:1. 假设给定10个数,两两比较,只需要比较9次即可。2. 比较完之后进行大小交换。
我将采用分步讲解,第一种主函数,第二种调用函数。
主函数:
调用函数:
这里以画图的形式来展示第二个for语句的意思:
我们想一下,第一次排序完之后进行第二次排序,只需要排到9 比 1大时就停止,不需要继续下去,因为第一次排序时10 已经比9大。是不是减少了执行的步骤,方便了一些?确实!
这里讲一个问题:能不能把sz的定义放在调用函数中?
答案:不行!因为这样计算的是传过来的数组的元素,而我们知道:除了sizeof(数组名)和&(数组名)之外,其它的数组名的意义是首元素的地址,所以计算的sz会是1,冒泡排序就实现不了。
希望对你有所帮助!!!^__^
志忍私,然后能公;行忍情性,然后能修,知而好问然后能才。
---------《荀子·儒效》
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。