网上逛逛,看了有些人在求冒泡的算法,再看了别人给的解释,只能说“表面工作”。只求代码,不求过程。除了徒劳,我不觉的还有什么可以为之想的。。个人也是个新手,说下自己的见解吧。大牛看了可一笑而过,别留此喷我。之前老是喜欢听别人讲什么算法之类的东西,个人对于算法不感冒,对于冒泡,谈谈自己的看法。
冒泡,说的简单,就是方便我们比较数与数之间的大小(n:n+1),n大呢,还是n+1大呢。
基本思想:
假设有N个数据放在数组a中,现要把这N个数从小到大排序.
首先: 在a[0]到a[N-1]的范围内,选出最小值与a[0]交换;
然后: 在a[1]到a[N-1]范围内,选出最小值与a[1]交换;
接着是a[2]到a[N-1]的范围,这样依次进行下去,进行N-1次选择后就可完成排序.
比如此时有一数组 int[] myBublleAry={3,5,8,1,9,7,4}; 要把它进行排序(从大到小,从小到大,大同小异)。 这里以从小到大排序。
流程图:
赋上代码: