zoukankan      html  css  js  c++  java
  • Python 冒泡排序法

    #冒泡排序法:是一种简单直观的排序算法。

    它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。

    走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。

    这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。

    #冒泡排序法一:从小到大排序

    def bubbleSort(arr):
      n=len(arr)

      #遍历所有数组元素
      for i in range(n):

      #从头遍历到已排序的数前
        for j in range(0,n-i-1):

        #当前数值与紧邻的后一个数值比较,如果前面的数值就相互调换
        if arr[j] > arr[j+1]:
          arr[j],arr[j+1] = arr[j+1],arr[j]


    #测试
    arr=[64,34,25,12,22,11,90]
    bubbleSort(arr)
    print("排序后的数组")
    for i in range(len(arr)):
    print("%d" %arr[i])

    #冒泡排序法二:从排序

    def bubbleSort(arr):
      n=len(arr)

      #遍历所有数组元素
      for i in range(n):

      #从头遍历到已排序的数前
        for j in range(0,n-i-1):

        #当前数值与紧邻的后一个数值比较,如果前面的数值就相互调换
        if arr[j]arr[j+1]:
          arr[j],arr[j+1] = arr[j+1],arr[j]


    #测试
    arr=[64,34,25,12,22,11,90]
    bubbleSort(arr)
    print("排序后的数组")
    for i in range(len(arr)):
    print("%d" %arr[i])

  • 相关阅读:
    Seq_file文件系统实例剖析
    linux 网卡接收多播MAC(01:08开头)
    linux-3.14.13 看到mpls gso支持
    /usr/include/sys/types.h:62: error: conflicting types for ‘dev_t’
    gcc编译参数-fPIC的一些问题
    glibc-2.15编译error: linker with -z relro support required
    no CONFIG_BQL
    if_nametoindex可以检查网卡名称是否有效
    剑指offer(10)
    剑指Offer(9)
  • 原文地址:https://www.cnblogs.com/xiangers/p/15439012.html
Copyright © 2011-2022 走看看