第一种(较差) 第二种(利用选择排序:较好) ...
分类:
其他好文 时间:
2020-01-26 19:00:26
阅读次数:
55
循环待排序序列, 从第i个到第N 1个元素中找到最小的,并将其位置存下来 将未排序部分的最小的换到有序部分的最后位置 ...
分类:
编程语言 时间:
2020-01-23 09:41:39
阅读次数:
81
选择排序是一种较为简单直观的算法,简单暴力易看懂(代价就是效率较低)。 其原理就是不断遍历数组,每遍历一轮都选择出一个最值放置到前方使其有序排列,然后再遍历剩余的无序元素,依此类推,直至所有元素都有序排列。 现有一数组int[] array = {3, 5, 6, 1, 8, 7, 4, 9, 2, ...
分类:
编程语言 时间:
2020-01-21 19:53:52
阅读次数:
70
一、复习: 条件循环:while i = 3 while i > 0: print(i) i –= 1 arr = [2, 3, 5, 7, 9]while len(arr) > 0: num = arr[0] arr.remove(num) print(arr) 选择排序: [3, 10, 2, ... ...
分类:
编程语言 时间:
2020-01-18 12:37:25
阅读次数:
107
写在前面:我感觉阅读算法书比没有系统地学习算法就开始盲目刷题要好很多 学习了数组、链表、栈、哈希表(散列函数)、选择排序、快速排序(分而治之)、二分查找、简单查找、递归、递推,觉得能够学到很多东西。 算法书并没有像知乎上说的没有用处,直接刷题就好??(本人为学校acm团队队员,一直为不能ak,有时周 ...
分类:
编程语言 时间:
2020-01-15 12:17:46
阅读次数:
142
选择排序算法步骤: 找到数组中最小的那个元素中, 将它和数组的第一个元素交换位置, 在剩下的元素中找到最小的元素,将它和数组的第二个元素交换位置, 如此往复,知道将整个数组排序。 逐步分析: 假设一个数组有 6 个元素, [5, 1, 4, 3, 2, 6] 第 1 个元素为 5,与剩余 5 个元素 ...
分类:
编程语言 时间:
2020-01-14 20:58:31
阅读次数:
108
#include<iostream> using namespace std; int main() { int i,j; int arr[] = {6, 5, 3, 2, 4}; for (i = 0; i <5 ; i++) { //默认第一个是最小的。 int min = arr[i]; // ...
分类:
编程语言 时间:
2020-01-12 22:17:07
阅读次数:
82
选择排序 选择排序算法是对冒泡排序算法进行优化后得到的一种排序算法,相比冒泡排序,选择排序减少了对序列进行排序的过程中,序列元素移动的次数。 原理 以对序列进行升序排序为例: 1) 从待排序序列中选择一个待排序区间,假设待排序序列长度为n,则待排序区间由[0,n-1]、[0,n-2]、[0,n-3] ...
分类:
编程语言 时间:
2020-01-12 13:35:39
阅读次数:
74
一、 选择排序 [3, 10, 2, 7, 16] 第1次:[3, 10, 2, 7, 16]找出2, 放入新数组中[2] 第2次:[3, 10, 7, 16]找出3, 追加到新数组中[2, 3] 第3次:[10, 7, 16]找出7,追加到新数组中[2, 3, 7] 第4次:[10, 16]找出1... ...
分类:
编程语言 时间:
2020-01-12 00:02:14
阅读次数:
82