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])

  • 相关阅读:
    心理学安全威胁
    设计模式是在运用构造定律
    分形理论
    构造定律
    [SOA]REST与SOA两种架构的异同比较
    加法是自然之道
    ES : 软件工程学的复杂度理论及物理学解释
    软件架构的灵活设计
    软件复杂度与结构:(影响复杂度的因素)
    socket 的通信过程
  • 原文地址:https://www.cnblogs.com/xiangers/p/15439012.html
Copyright © 2011-2022 走看看