精华内容
下载资源
问答
  • 用Java实现选择排序

    2019-08-09 11:18:56
    * 项目:用Java实现选择排序 * 时间:2019/8/9 *作者:郑翰林 */ import java.util.Scanner; public class Exercies10 { public static void main(String[] args) { System.out.print("请输入数组:"); Scanner ...
    /**
     * 项目:用Java实现选择排序
     * 时间:2019/8/9
     *作者:郑翰林
     */
    import java.util.Scanner;
    public class Exercies10 {
        public static void main(String[] args) {
            System.out.print("请输入数组:");
            Scanner sc = new Scanner(System.in);
            String str = sc.next().toString();
            String[] b  = str.split(",");
            System.out.print("排序前的数组为:");
            for(int i=0,len=b.length;i<len; i++){
                String buf= i==b.length-1? b[i]: (b[i]+",");
                System.out.print(buf);
            }
            int[] a = new int[b.length];
            for(int i=0;i<b.length;i++){
                a[i] = Integer.parseInt(b[i]);
            }
                    for(int i = 0; i < a.length - 1; i++) {
                        int min = i;
                        for(int j = i + 1; j < a.length; j++){
                            if(a[min] > a[j]){
                                min = j; 
                            }
                        }
                        if(min != i){ 
                            int temp = a[min];
                            a[min] = a[i];
                            a[i] = temp;
                        }
                    }
                    System.out.println();
                    System.out.print("后排序后的数组为:");
                    for(int i=0,len=a.length;i<len; i++){
                    String c=i==a.length-1?  a[i]+"": (a[i]+",");
                    System.out.print(c);
                    }
                }
    
            }
    展开全文
  • 用java实现选择排序SelectSort 用java实现选择排序SelectSort 用java实现选择排序SelectSort
  • 选择排序(Selection sort)的工作原理是:首先在未排序序列中找到最小(大)元素,存放到排序...选择排序(Selection sort)的原理图是: 选择排序(Selection sort)的实现代码是:package cn.itcast3;/** 数组排序:* ...

    选择排序(Selection sort)的工作原理是:

    首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。

    选择排序(Selection sort)的原理图是:

    0818b9ca8b590ca3270a3433284dd417.png

    选择排序(Selection sort)的实现代码是:

    package cn.itcast3;

    /*

    * 数组排序:

    *   请将这个数组按照从小到大的顺序排列

    *   {4,6,2,43,7} >> {2,4,6,7,43}

    */

    public class Demo2 {

    public static void main(String[] args) {

    //选择排序

    int[] arr = {4,6,2,43,7};

    for(int i=0;i

    for(int j=i+1;j

    if(arr[i]>arr[j]){  //这个条件保证从小到大排列,反之从大到小排列

    int temp = arr[i];

    arr[i] = arr[j];

    arr[j] = temp;

    }

    }

    }

    for (int i = 0; i < arr.length; i++) {

    System.out.print(arr[i]+" ");

    }

    }

    }

    展开全文
  • 选择排序就是在一堆数据中选择最大或者最小的依次放在排好序列的后面,直到所有的数据都排完 ,每次需要检查的数据会逐渐减少,最后...下图是根据思路,来用JAVA实现的方法一般正常情况下,用一个方法即可:如下图:...

    选择排序就是在一堆数据中选择最大或者最小的依次放在排好序列的后面,直到所有的数据都排完 ,每次需要检查的数据会逐渐减少,最后一次需要检查的数据只有一个,因为大0表示法忽略二分之一这样的常数,所以运行的时间一般写作为O(n2)。

    选择排序是一种灵性的算法,但是速度不是很快。快速排序是一种更加快速的排序方法,后续我在进行撰写。

    下图是根据思路,来用JAVA实现的方法

    一般正常情况下,用一个方法即可:如下图:

    因为只用了一个数组is。所以不需要返回值,直接打印使用is,即为排序后的数据。

    图片是为了学习和思考,所以又加了能copy的代码:

    /**

    * 选择排序

    * @param is 要排序的数组

    * @author zhao.fg

    */

    public static void selectSort(int[] is) {

    for (int i = 0; i < is.length; i++) {

    int num = is[i]; //用来保存最小的值

    int num_index = i; //用来保存最小的数据

    for (int j = i + 1; j < is.length; j++) {

    if (is[j] < num) {//此处号从大到小

    num = is[j];

    num_index = j;

    }

    }

    if (num_index != i) {//将最小值与i下标数据互换

    is[num_index] = is[i];

    is[i] = num;

    }

    }

    }

    展开全文
  • 选择排序法是一种简单直接的排序算法,时间复杂度为O(n²) 。 选择排序法的第一层循环从起始元素开始选到倒数第二个元素,主要是在每次进入的第二层循环之前,将外层循环的下标赋值给临时变量,接下来的第二层循环中...

    选择排序法是一种简单直接的排序算法,时间复杂度为O(n²) 。

    选择排序法的第一层循环从起始元素开始选到倒数第二个元素,主要是在每次进入的第二层循环之前,将外层循环的下标赋值给临时变量,接下来的第二层循环中,如果发现有比这个最小位置处的元素更小的元素,则将那个更小的元素的下标赋给临时变量,最后,在二层循环退出后,如果临时变量改变,则说明,有比当前外层循环位置更小的元素,需要将这两个元素交换。

    动画演示:
    选择排序原理动画演示

    代码:

    int a[]=new int[n];
    for(int i=0;i<n;i++)
    {
    	for(int j=i+1;j<n;j++)
    	{
    		if(a[i]>a[j])//较小的元素放左边
    		{
    			int t=a[i];a[i]=a[j];a[j]=t;
    		}
    	}
    }
    
    


    二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。

    	int low,high,mid;
    	System.out.println("请输入要查找的整数:");
    	int find=input.nextInt();
    	low=0;
    	high=9;     //low和high用于追踪要在其中查找的列表部分
    	int text=0;    //text用于测试列表中是否存在查找的元素
    	while(low<=high)   //只要范围没有缩小到只包含一个元素
    	{
    		mid=(low+high)/2;   //检查中间的元素
    		if(find==a[mid])    //找到了元素
    		{
    			System.out.println("查找的数为:a["+mid+"]: "+a[mid]);
    			text=1;
    			break;
    		}
    		if(find>a[mid])     //猜的数字大了
    		{
    			low=mid+1;
    		}
    		else                //猜的数字小了
    		{
    			high=mid-1;
    		}
    	}
    	if(text==0)    //text的值未变
    		System.out.println("未找到该整数。");
    
    
    展开全文
  • 代码如下 [code="java"]import java.util.*; public class MySet { public static void main(String[] args) { ArrayList al=new ArrayList(); while(al.size()
  • 选择排序算法概括起来:思路很简单,但效果很费劲。 思路简单在于我们对一组元素排序,从前至后把元素和其后面的元素逐一对比选出最小or最大的一个放到数组首部,依次类推,完成排序; 效果很费劲在于每次都要遍历...
  • java实现选择排序

    2020-03-27 12:33:05
    java实现选择排序算法介绍实现 算法介绍 选择排序:从头至尾扫描序列,循环排列arr.length-1次,每一次循环找出序列中最小值,index记录其下标,放到序列最前方,下一次循环应跳过有序序列 如下图 实现 public ...
  • [Java教程]【Java SE】如何用Java实现直接选择排序0 2017-05-09 00:01:08摘要:直接选择排序属于选择排序的一种,但是它的排序算法比冒泡排序的速度要快一些,由于它的算法比较简单,所以也比较适合初学者学习掌握。...
  • 评论#re: 一种用Java实现的直接选择排序算法2007-04-18 08:42开源英汉机器翻译开源英汉机器翻译C#.NET项目 www.liebiao.net我们邀请你 技术交流回复更多评论#re: 一种用Java实现的直接选择排序算法2007-11-14 20:42...
  • Java实现选择排序

    2020-02-05 11:41:48
    Java实现选择排序法 萌新第一次发博客,为了提高自己的编程兴趣,接下来会发一系列的博客,根据自己 的理解,用Java实现一些比较简单的算法。 选择排序法的原理: 现在有一组未排序的数:{5,7,9,2,1,3,4,0,8,6},...
  • 冒泡排序:依次比较两个相邻的元素,将值大的元素交换至右端,一轮比较过后,最大的元素在最右端。   public class BubbleSort { public static void main(String[] args) { int[] arr={11,2,223,3,42,9,};//...
  • 用来写冒泡排序的方法。参数为 需要排序的整数数组。代码: public static void maopao(int[] arr) { for (int x = 0; x < arr.length; x++) { for (int y = 0; y < arr.length - x - 1;...
  • 选择排序算法介绍选择排序与冒泡排序非常的相似,都是一层层筑顶的过程,不同点在于冒泡排序会...选择排序算法Java实现如《插入排序(Insertsort)之Java实现》一样,先实现一个数组工具类。代码如下:public class Arr...
  • 冒泡排序:故名思意就像烧开的水一样,大的气泡,最先跑到上面去,在这里算法实现就是将大的数字通过比较逐渐置换到后面 需要注意的点: 外层循环为数组长度(arr.length)减1 内层循环为(arr.length-i-1) 如果...
  • 选择排序Java实现一、方法一package cn.com.zfc.lesson21.sort;/**** @title SelectSort* @describe 选择排序* @author 张富昌* @date 2016年10月1日下午4:13:50*/public class SelectSort_1 {// 简单选择排序的第...
  • java实现选择排序算法

    千次阅读 2018-08-30 23:39:56
    前面我们讲解了选择排序算法,现在我们用java代码来实现 package ttt; public class SelectSort { public static int[] BubbleSort(int[] theArray) { int tmp; for(int i = 0; i &lt; theArray.length;...
  • 用选择排序和冒泡排序进行从小到大的排序: int array[]={5,63,59,86,32,12,53,6}; 1.选择排序 选择排序就是对数据进行遍历,然后两两对比,如下图:先拿下标为0的数据5和后边的所有数据对比,如果后边的数据有小于...
  • 关于排序的算法题,有插入排序,冒泡排序,选择排序,以下贴上用JAVA实现的代码:public class test5{public static void print(int []array) //输出数组方法{for(int i=0;iSystem.out.print(" "+array[i]);}public ...
  • //简单选择排序 //一直找最小元素,然后一直往前移动 import java.util.Arrays; public class SelectSort { public static void main(String[] args) { int[] arr = new int[] { 2, 3, 0,45,3,2, 55 }; ...
  • 用java代码实现冒泡排序与选择排序 冒泡排序的思想是:使用数组中从第一个元素开始,相邻的两个元素进行比较,把大的或小的放在后一个位置,然后依次往后进行比较,一次比较完,最后一个就是这个数组中最大或最小的...
  • 接下来我准备发表一系列关于排序的算法,本文我准备用Java实现冒泡排序、插入排序、选择排序: 1、冒泡排序: import java.util.Arrays; /** * @author LiYang * @ClassName BubbleSort * @Description 冒泡排序...
  • 用Java实现希尔排序

    2020-10-15 20:16:06
    排序介绍 希尔排序是希尔于1959年提出的一种排序算法,希尔排序也是一种插入排序,他是简单插入排序...希尔排序交换法(对有序序列在插入时选择交换法) public static void main(String[] args) { int[]arr= {3,5
  • 用java实现快速排序

    2016-10-11 19:51:09
    用java实现快速排序 1.快速排序的基本思想和算法  基本思想:通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列...
  • 三种简单的排序用java实现

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,035
精华内容 414
关键字:

用java实现选择排序

java 订阅