#include
by 大盛的ai - C/C++ - 2012-11-07 22:59:42 阅读(1578) 回复(6)
各位 用python写了一个冒泡排序的程序,就是不能达到效果 ,有没有人给指点一下 #!/usr/bin/python def sort(): numgroup=[1,32,4,56,23,45,67,75,47,68,123,7] N=len(numgroup)-2 while(N>0): for i in (0,N): if numgroup>numgroup[i+1]: a=numgroup numgroup=numgroup[i+1] numgroup[i+1]=a else: print "Do nothing" else: N=N-1 else: print numgroup sort()
原理: 依次将第1、2、3……n-1个元素同其后面的元素经行比较,如果发现该元素大于其后面的元素,就将该元素同后面的元素调换位置。比较的顺序为:第1个元素同第2、3……n个元素经行比较,第2个元素同第3、4……n个元素经行比较,……,第n-1个元素同第n个元素经行比较。 时间复杂度分析: (1)算法的最好时间复杂度 若文件的初始状态是正序的,所需的关键字比较次数C、记录移动次数M分别为: Cmin=n(n-1)/2=O(n2)...
用Java语言实现的各种排序,包括插入排序、冒泡排序、选择排序、Shell排序、快速排序、归并排序、堆排序、SortUtil等。 插入排序: package org.rut.util.algorithm.support; import org.rut.util.algorithm.SortUtil; /** * @author treeroot * @since 2006-2-2 * @version 1.0 */ public class InsertSort implements SortUtil.Sort { /* (non-Javadoc) * @see org.ru...
/** * @desc 冒泡算法 for java * @auth BianJiang * * 纯碎学习之用 */ class BobbleSort { public static void main(String[] args) { int i,j,k; int[] num = {5, 4, 3, 2, 1}; for(i=1; inum.length; i++) { for(j=0; j=num.length -i -1; j++) { if(num[j] > num[j+1]) { num[j] = num[j] + n...
java排序1(冒泡排序) Java代码[code]1.package hello; 2. 3.import java.util.Random; 4. 5./** 6. *冒泡排序 时间级别:O(N*N)【注】效率低,排序速度慢 7. */ 8.class BubbleSort { 9. 10. long[] a; 11. int nElems; 12. 13. // constructor 14. public BubbleSort(int max) { 15. a = new long[max]; 16. nElems = 0; 17. } 18. 19. /...
本帖最后由 cdtits 于 2013-01-26 19:54 编辑 CSDN上某人做的,觉得不错,分享一下,望海涵!http://bbs.csdn.net/topics/390349402 [code]''' Created on Jan 17, 2013 @author: Shannon ''' import wx import random size = 30 xPos = 50 BarData = [] width = 900/(size*2) gap = 900/(size*4) delay = 100 class AnimationPanel(wx.Panel): def __init__(self,parent,ID=-1,pos=(0,0),size=(750,500)): ...
本帖最后由 feiyang10086 于 2010-12-03 10:41 编辑 转:Archy Yu python实现冒泡排序 代码[code] def bubbleSort(numbers): for j in xrange(len(numbers),-1,-1): for i in xrange(0,j-1,1): if numbers > numbers[i+1]: numbers,numbers[i+1] = numbers[i+1],numbers print numbers def main(): numbers = [23,12,9,15,6] bubbleSort(numbers) if __name__ =...
书上说快速排序是对起泡排序的一种改进,个人感觉他俩没啥关系呢?求高人指点! 冒泡排序的思想较简单: S1:从待排序序列的起始位置开始,从前往后依次比较各个位置和其后一位置的值得大小并执行S2。 S2:如果当前位置的值大于其后需位置的值,就把他俩的值交换。 //完成此次全序列比较后,序列最后位置的值即此序列最大值,所以其不需要在参与冒泡。 S4:将序列的最后一个位置从待冒泡的序列中移除。如果移除后待排序序列不为空则执...