目录
百战程序员,全站22050+开发课程+文档 ,学习精选优质好课快人一步!观看视频 快捷键ALT+N

Python全系列 教程

3567个小节阅读:5929.5k

收藏
全部开发者教程

鸿蒙应用开发

C语言快速入门

JAVA全系列 教程

面向对象的程序设计语言

Python全系列 教程

Python3.x版本,未来主流的版本

人工智能 教程

顺势而为,AI创新未来

大厂算法 教程

算法,程序员自我提升必经之路

C++ 教程

一门通用计算机编程语言

微服务 教程

目前业界流行的框架组合

web前端全系列 教程

通向WEB技术世界的钥匙

大数据全系列 教程

站在云端操控万千数据

AIGC全能工具班

A

A A

White Night

阅读(157)
赞(0)

选择排序

image-20220906174959227

选择排序是一种简单直观的排序算法,无论什么数据进去都是 O(n²) 的时间复杂度。所以用到它的时候,数据规模越小越好

算法原理

  • 首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置

  • 然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾

  • 以此类推,直到所有元素均排序完毕

选择排序演示-16462773876111

举例

image-20220914164344728

代码

特性

  • 时间复杂度为 $O(n^2)$、非自适应排序:外循环共 n−1 轮,第一轮的未排序区间长度为 n ,最后一轮的未排序区间长度为 2 ,即各轮外循环分别包含 n、n−1、…、3、2 轮内循环,求和为 $\frac {(n−1)(n+2)} {2} $

  • 空间复杂度 $O(1)$、原地排序:指针 i 和 j 使用常数大小的额外空间。

  • 非稳定排序:非稳定

    image-20231225161831514

实时效果反馈

1. 关于选择排序算法,说法正确的是?

A 选择排序需要反复比较相邻的元素

B 选择排序需要俩俩比较元素

C 选择排序只能从小到大排序

D 选择排序只能从大到小排序

答案

1=>B

北京市昌平区回龙观镇南店村综合商业楼2楼226室

©2014-2023 百战卓越(北京)科技有限公司 All Rights Reserved.

京ICP备14032124号-2