精练排序算法

2023-11-07

排序算法(1)

首先列举一些经典的案例(皆为python编写):

1

a=[33,24,45,16,77]
for i in range(2):
    for j in range(4,i,-1):
        if a[j]>a[i]:
            a[j],a[i]=a[i],a[j]
 print(a)
 ###降序排列,从后向前将数值大的排在序列的前面
i代表排序的轮数或将比较的前数,j则代表当前数,若j大则与i换位
且只排序两轮### 

所以最终结果是[77,45,33,16,24]

后面代码不做过多注释,大家要像1中那样分析
最好代一下数值然后理解抽象思维
2

d=[6,3,2,7,5]
for i in range(2):
    k=i
    for j in range(i+1,5):
        if d[j]>d[k]:
            k=j
    t=d[k]
    for i in range(k,i,-1):
        d[j]=d[j-1]
    d[i]=t
print(d)            

结果是[7,6,3,2,5]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

精练排序算法 的相关文章

随机推荐

  • 浅谈软件危机

    什么是软件危机 软件危机是计算机软件在它的开发和维护过程中所遇到的一系列严重问题 概括地说 主要包含两方面的问题 如何开发软件 怎样满足对软件日益增长的需求 如何维护数量不断膨胀的已有软件 危机实例 IBM OS 360 操作系统被认为是一
  • C++与Java比较(转)

    作为一名C 程序员 我们早已掌握了面向对象程序设计的基本概念 而且Java的语法无疑是非常熟悉的 事实上 Java本来就是从C 衍生出来的 然而 C 和Java之间仍存在一些显著的差异 可以这样说 这些差异代表着技术的极大进步 一旦我们弄清
  • VS2019 windows驱动开发环境配置

    配置Windows驱动开发环境 VS2019 下载VS2019 下载链接 https visualstudio microsoft com zh hans downloads 选择你所需要的开发环境和配置 确认下载完后 在你安装的WDK 的
  • 【数据库系统概论】第三章:SQL

    B站视频 B站第一章 参考资料 图片来自视频链接和参考资料 本章目录 SQL特点 SQL基本概念 SQL的基本语法 SQL特点 SQL包括 数据查询 数据操作 数据定义 数据控制 它是一个非过程语言 什么是非过程性语言 我们在逻辑和物理模型
  • WPF依赖属性优先级

    有下面代码 属性 样式 触发器都设置了按钮的颜色 请问按钮最终是什么颜色
  • DIY个人智能家庭网关—— 路由器篇之安装python

    Python是一种解释型 面向对象 动态数据类型的高级程序设计语言 在openwrt上进行二次开发编写自己的程序 python肯定是最方便最快捷的编程语言 因为它是解释型语言 无需openwrt的编译环境 只要安装好了python就可以直接
  • vite跨域问题,你可能需要看这篇文章

    最近在学习项目的时候 使用了vite工具进行构建 然后出现了跨域的问题 中间的曲折不过多叙述 直接进入正题 前端成功启动后的界面 然后在后端进行的Controller上使用了如下的配置 然后浏览器就会出现跨域的问题 为什么会出现这个情况了
  • 学生成绩管理系统、Java

    这是一个功能比较简单的学生管理系统 特别适合初学者练练手 没有使用Java的特点 更完美的学生管理系统在我的博客寻找 import java util Scanner public class StudentManagement publi
  • JS - 4字节转单精度浮点数

    文章目录 JS 数据类型 IEEEE475 Sign 符号位 Exponent 指数位 Significand 小数位 转换公式 转换方法 在线工具 参考鸣谢 JS 数据类型 JS 是一种弱类型的语言 它的数据类型包含字符串值 数值 布尔值
  • C语言,用函数封装实现字符串逆置

    include
  • 门控时钟

    结构 1 这种系统时钟门控的机制算然简单 但是容易使门控后的时钟不完整 甚至产生毛刺 结构 2 这种门控方法避免了门控时钟的不完整性 也可以避免避免毛刺的产生 但门控后的时钟可能会产生亚稳态 结构 3 这种结构解决了结构 2的亚稳态问题 结
  • 【FreeRTOS】队列的使用

    作者主页 凉开水白菜 作者简介 共同学习 互相监督 热于分享 多加讨论 一起进步 专栏资料 https pan baidu com s 1nc1rfyLiMyw6ZhxiZ1Cumg pwd free 点赞 收藏 再看 养成习惯 订阅的粉丝
  • Mysql Partition 理论知识总结

    简述 本文内容主要 Giuseppe Maxia 曾在Mysql Conference Expo 2010发表关于
  • qt_共享库的使用

    在 Windows 中 MinGW 将输出 a 和 dll MSVC 将输出 lib 和 dll 在 Linux 中 MinGW 将输出 so so 1 so 1 0 和 so 1 0 0 lib 其中 a 和 so 是导入库 它们有助于将
  • STM32的CAN过滤

    文章目录 简介 相关寄存器 代码实例 只过滤一个CAN ID 过滤多个CAN ID 简介 STM32的CAN控制器可以对接收到的数据报文进行过滤 只接收指定CAN ID的数据 对于其他CAN ID发送过来的数据 则不再触发CAN中断 根据芯
  • 关于C语言的二分法

    1 二分法 二分法所属现代词 指的是数学领域的概念 经常用于j计算机中的查找过程中 2 基本思想 把函数f x 的零点所在的区间 a b 满足f a f b lt 0 一分为二 得到 a m 和 m b 根据 f a f m lt 0 是否
  • Harmony OS 开发指南——源码下载和编译

    本文介绍了如何下载鸿蒙系统源码 如何一次性配置可以编译三个目标平台 Hi3516 Hi3518和Hi3861 的编译环境 以及如何将源码编译为三个目标平台的二进制文件 坑点总结 下载源码基本上没有太多坑 可以很顺利的进行 编译源码主要的一个
  • PS CJ37/CJ38/CJ34 增加/返回/转借预算

    目录 CJ37增加预算 CJ38返回预算 CJ34转借预算 01 CJ37增加预算 1 补充预算 调用事务代码CJ37 输入要增加的WBS要素的预算 点击保存即可 2 代码示例 预算补充代码 调用函数 KBPP EXTERN UPDATE
  • 【目标检测】基于yolov7的海上船舶检测和识别(附代码和数据集,Windows系统)

    写在前面 首先感谢兄弟们的订阅 让我有创作的动力 在创作过程我会尽最大能力 保证作品的质量 如果有问题 可以私信我 让我们携手共进 共创辉煌 本次项目是在Windows系统上运行的 Ubuntu系统上运行请看专栏的另外一篇文章 文末附项目代
  • 精练排序算法

    排序算法 1 首先列举一些经典的案例 皆为python编写 1 a 33 24 45 16 77 for i in range 2 for j in range 4 i 1 if a j gt a i a j a i a i a j pri