算法(一)选择排序--蛮力算法的一种
2014-11-02 09:42
239 查看
算法的核心:在一个可排序的有序列表中,在每一轮的循环中找出最小的元素并把他放在最终应该在的位置上,下一轮将从i+1开始搜索,直至所有的元素都在他应该在的位置时,程序结束。
eg:
89 45 68 90 29 34 17
i=0
17 |45 68 90 29 34
89
i=1 17 29
|68 90 45 34 89
i=2 17 29
34 |90 45 68 89
i=3 17 29 34
45 |90 68 89
i=4 17 29 34 45
68 |90 89
i=5 17 29 34 45 68
89 |90
Sometimes the questions are complicated and the answers are simple.<^~^>
eg:
89 45 68 90 29 34 17
i=0
17 |45 68 90 29 34
89
i=1 17 29
|68 90 45 34 89
i=2 17 29
34 |90 45 68 89
i=3 17 29 34
45 |90 68 89
i=4 17 29 34 45
68 |90 89
i=5 17 29 34 45 68
89 |90
int i,j,temp,min; int A[] = {89,45,68,90,29,34,17}; for(i = 0; i<A.length-1;i++){ min = i; for(j = i+1; j< A.length; j++){ if(A[min]>A[j]){ min = j; } } if(min != i){ temp = A[min]; A[min] = A[i]; A[i] = temp; } }
Sometimes the questions are complicated and the answers are simple.<^~^>
相关文章推荐
- 造就灵活的大脑,熟知每一种排列算法。--选择排序
- 关于算法--蛮力法篇--选择排序
- 算法笔记_008:选择排序和冒泡排序【蛮力法】
- 算法分析设计与分析-蛮力法(1)--选择排序
- 蛮力算法: 选择排序 冒泡排序(详解)
- 怎样编写一个程序,把一个有序整数数组放到二叉树中? 编写实现链表排序的一种算法。说明为什么你会选择用这样的方法?
- 每天一种算法--选择排序
- 79 1.编写实现链表排序的一种算法。说明为什么你会选择用这样的方法?
- 笔试面试最常涉及到的12种排序算法(包括插入排序、二分插入排序、希尔排序、选择排序、冒泡排序、鸡尾酒排序、快速排序、堆排序、归并排序、桶排序、计数排序和基数排序)进行了详解。每一种算法都有基本介绍、算
- 【C#算法】冒泡排序 选择排序 插入排序 希尔排序--转
- 算法熟记-排序系列-选择排序
- 算法不会,尚能饭否之排序——直接选择排序
- 选择排序的算法
- 双排序:从算法的选择到问题求解
- java 合并排序算法、冒泡排序算法、选择排序算法、插入排序算法、快速排
- 常用的选择排序.Shell排序.快速排序.冒泡排序.插入排序的算法
- 用JAVA实现排序算法之三:直接选择排序
- 算法-选择排序
- 白话经典算法系列之四 直接选择排序及交换二个数据的正确实现
- 算法-选择排序