C语言:选择排序

本文介绍了C语言中的选择排序,解释了选择排序的基本原理,即通过多轮选择找到最大值或最小值进行排序。同时,文章讨论了选择排序与冒泡排序的联系,指出选择排序是冒泡排序的改进版,减少了交换次数,提高了效率。最后,提供了选择排序的代码示例。
摘要由CSDN通过智能技术生成

C语言:选择排序

标签: C语言 选择排序

by 小威威


1.选择排序是什么?

选择排序就是选择符合要求的数(一般是最大值或最小值),放到某个指定的位置。通过多次选择排位,进而完成数组内元素的排序。

2.选择排序与冒泡排序的联系

选择排序是冒泡排序的改进版,缩短了一定的时间。但是二者的原理都是一样的。这两种排序呢都是通过多轮操作实现排序的,每一轮都找出一个最大值或者最小值。冒泡排序是通过两两比较,两两交换实现将最大值或最小值归位。而选择排序呢,是通过遍历数组找出最大值或最小值,然后将它放到首位或尾位(此处的首位与尾位是会改变的,当我们将一个最大值放到指定位置后,就忽略该元素及其位置)。换句话说,就是选择排序每轮操作是多次比较和一次交换,而冒泡排序是多次比较多次交换。因此选择排序比冒泡排序更省事,因为交换次数少了。

3.代码

# include <stdio.h>
# include <stdlib.h>
void selection_sort(int *pArr, int len);
int main(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值