码迷,mamicode.com
首页 > 编程语言 > 详细

数组常见的操作_选择排序

时间:2015-02-26 21:26:49      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:

  排序分类:
       内部排序:就是将需要处理的所有数据都加载到内部存储器中进行排序
                交换式排序法:是运用数值较后,依判断规则对数据位置进行交换,以达到排序的目的
                    冒泡排序法(Bubble Sort)
                    快速排序法(Quick Sort)
                选择式排序法: 
                    选择排序法(Select Sort)
                               堆排序法(Heap Sort)
                插入式排序法:对欲排序的元素以插入的方式找寻元素的适当位置,以达到排序的目的
                    插入排序法(Insertion Sort)
                    谢耳排序法(Shell Sort)
                    二叉树排序法(Binary-tree Sort)
                    
       外部排序:数据量过大,无法全部加载到内存中,需要借助外部存储进行排序
                合并排序法,直接合并排序法

 

选择排序原理:   先是0角标和后面的每个角标进行比较,确定了0角标后,   

        1角标继续和后面的每个角标进行比较,再确定1角标,以此类推完成选择排序,   每次比较完下一轮比较都会减少一次                  

        用到for嵌套  内循环结束一次,最值出现在头角标位置上

 1 public class Array_SelectSort {
 2     public static void main(String[] args) {
 3         int[] arr = {3,4,567,75,46,3};
 4         PrintArray(arr);
 5 
 6         selectSort(arr);
 7         PrintArray(arr);
 8     }
 9     
10     public static void selectSort(int[] arr){
11         for (int x = 0;x<arr.length-1 ;x++ ){
12             for (int y=x+1;y<arr.length ;y++ ){
13                 if(arr[x]>arr[y]){
14                     swap(arr,x,y);
15                 }
16             }
17         }
18     }
19     
20     public static void swap(int[] arr,int a , int b){
21         int temp = arr[a];
22         arr[a] = arr[b];
23         arr[b] = temp;
24     }
25     
26     public static void PrintArray(int[] arr){
27         System.out.print("【");
28         for (int x = 0;x<arr.length ;x++ ){
29             if (x != arr.length-1)
30                System.out.print(arr[x]+", ");
31             else
32                System.out.println(arr[x]+"】");
33         }
34     }
35 }

 

数组常见的操作_选择排序

标签:

原文地址:http://www.cnblogs.com/LO-ME/p/3548016.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!