造就灵活的大脑,熟知每一种排列算法。--选择排序
2017-12-25 17:03
316 查看
个人笔记,仅供学习。
1.选择排序(Selection sort):
是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小或最大的元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小或最大元素,然后放到已排序序列的末尾。反复以此,直到排序完毕。选择排序的主要优点是与数据移动相关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n个元素的表进行排序总共进行至多n-1次交换。在所有的完全依靠交换去移动元素的排序方法中,选择排序属于非常好的一种。
2.算法描述:
比如在一个长度为N的无序数组中,在第一趟遍历N个数据,找出其中最小的数值与第一个元素交换,第二趟遍历剩下的N-1个数据,找出其中最小的数值与第二个元素交换......第N-1趟遍历剩下的2个数据,找出其中最小的数值与第N-1个元素交换,至此选择排序完成。
3.c
sharp实现:
1.选择排序(Selection sort):
是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小或最大的元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小或最大元素,然后放到已排序序列的末尾。反复以此,直到排序完毕。选择排序的主要优点是与数据移动相关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n个元素的表进行排序总共进行至多n-1次交换。在所有的完全依靠交换去移动元素的排序方法中,选择排序属于非常好的一种。
2.算法描述:
比如在一个长度为N的无序数组中,在第一趟遍历N个数据,找出其中最小的数值与第一个元素交换,第二趟遍历剩下的N-1个数据,找出其中最小的数值与第二个元素交换......第N-1趟遍历剩下的2个数据,找出其中最小的数值与第N-1个元素交换,至此选择排序完成。
3.c
sharp实现:
相关文章推荐
- 造就灵活的大脑,熟知每一种排列算法。--快速排序
- 造就灵活的大脑,熟知每一种排列算法。--冒泡排序
- 算法(一)选择排序--蛮力算法的一种
- 笔试面试最常涉及到的12种排序算法(包括插入排序、二分插入排序、希尔排序、选择排序、冒泡排序、鸡尾酒排序、快速排序、堆排序、归并排序、桶排序、计数排序和基数排序)进行了详解。每一种算法都有基本介绍、算
- 怎样编写一个程序,把一个有序整数数组放到二叉树中? 编写实现链表排序的一种算法。说明为什么你会选择用这样的方法?
- 每天一种算法--选择排序
- 79 1.编写实现链表排序的一种算法。说明为什么你会选择用这样的方法?
- 算法与数据结构基础(一)排序基础1.选择排序
- Java算法之排序(快速,冒泡,归并,选择)
- 简单排序算法:冒泡、选择、插入
- 【Java 常用算法】选择排序
- 基础算法之 选择排序
- 算法_基本排序算法之冒泡排序,选择排序,插入排序和希尔排序
- 双排序:从算法的选择到问题求解
- 【每日算法】选择排序算法之直接选择排序
- C#语法灵活运用之排列组合算法
- 算法---冒泡排序,快速排序,二分查找(折半查找),选择排序,插入排序
- 算法导论之插入排序,选择排序,归并排序,冒泡排序,希尔排序,堆排序,快速排序的c语言实现
- c# 排序 算法 函数 冒泡 选择 插入 希尔
- 算法--03.选择排序