zoukankan
html css js c++ java
选择排序
说明: 这一段在复习数据结构和算法,有一些零星笔记,欢迎指正。
选择排序:
描述:选出数组中最小的元素,与数组的第一个元素交换;然后选择出数组中次小的元素,与与第二个元素交换,直到完成
选择排序需要比较
N(N-1)/2
次,即
N2
次,而交换则只需要
N-1
次
对于是否已经排好序,或者随机文件,所花费的时间是一致的,即执行时间具有强迫性
选择排序应用在数据项比较大,键比较小的情况下,因为此时移动元素花费时间较多,而对于其他排序算法,元素移动频繁的多
程序:
template
<
class
Item
>
void
sort(Item a[],
int
left,
int
right)
{
int
i, j;
int
min;
for
(i
=
left; i
<
right; i
++
)
{
min
=
i;
for
(j
=
i
+
1
; j
<=
right; j
++
)
if
(a[j]
<
a[min]) min
=
j;
exch(a[i],a[min]);
}
}
查看全文
相关阅读:
linux下的crontab定时执行任务命令详解
494. Target Sum
347. Top K Frequent Elements
5. Longest Palindromic Substring
时间复杂度计算方法
62. Unique Paths
54. Spiral Matrix && 59. Spiral Matrix II
57. Insert Interval
53. Maximum Subarray
42.Trapping rain water
原文地址:https://www.cnblogs.com/maweifeng/p/123581.html
最新文章
打气球
c
cgcg
冰球
11
cross
hdu 1045
细胞
SQL------删除重复数据
2019年的工作总结
热门文章
Xamarin Android提示找不到资源属性定义
排版技巧---对后端人实用的
大学里留下的读书笔记
顺应天性
SQL——优化in
Pycharm初次使用
对资本的了解
yum源使用报错
linuk下proftpd安装
sqlldr
Copyright © 2011-2022 走看看