zoukankan      html  css  js  c++  java
  • python中对列表元素大小排序(冒泡排序法和选择排序法)

    前言:
    排序(Sorting) 是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,
    重新排列成一个关键字有序的序列。本文主要讲述python中经常用的两种排序算法,选择排序法和冒泡排序
    法及其区别。
    通过对列表里的元素大小排序进行阐述。


    一,选择排序法
    • 从第一个位置开始比较,找出最小的,和第一个位置互换,开始下一轮。
    lt = [3, 5, 2, 1, 8, 4]
    #求出lt的长度
    n = len(lt)
    #外层循环确定比较的轮数,x是下标,lt[x]在外层循环中代表lt中所有元素
    for x in range(n-1):
       #内层循环开始比较
       for y in range(x+1,n):
          #lt[x]在for y 循环中是代表特定的元素,lt [y]代表任意一个lt任意一个元素。
          if lt[x]>lt[y]:
             #让lt[x]和lt列表中每一个元素比较,找出小的
             lt[x],lt[y]=lt[y],lt[x]
    print(lt)


    二,冒泡排序法排序
    • 从左到右,数组中相邻的两个元素进行比较,将较大的放到后面。
    
    
    lt = [3, 5, 2, 1, 8, 4]
    n= len(lt)
    for x in range(n-1):
       for y in range(n-1-x):
          if lt[y]>lt[y+1]:
             lt[y],lt[y+1]=lt[y+1],lt[y]
    print(lt)
    
    

     选择排序法和冒泡排序法的区别:

    • 冒泡排序是比较相邻位置的两个数,而选择排序是按顺序比较,找最大值或者最小值;
    • 冒泡排序每一轮比较后,位置不对都需要换位置,选择排序每一轮比较都只需要换一次位置;
    • 冒泡排序是通过数去找位置,选择排序是给定位置去找数;
     
     
    全世界的程序员们联合起来吧!
  • 相关阅读:
    理解jquery的$.extend()、$.fn和$.fn.extend()
    Angularjs,WebAPI 搭建一个简易权限管理系统
    ASP.NET MVC Boilerplate简介
    写jQuery插件
    给Asp.Net MVC及WebApi添加路由优先级
    Oracle数据库之开发PL/SQL子程序和包
    Git 1.9.5.msysgit.1
    快速解读GC日志(转)
    Git & Github 一页简明笔记(转)main
    用python3.x与mysql数据库构建简单的爬虫系统(转)
  • 原文地址:https://www.cnblogs.com/chaojiyingxiong/p/9169054.html
Copyright © 2011-2022 走看看