还是先来原理的规矩:
选择法的原理是先将第一个数与后面的每一个数依次比较,不断将将小的赋给第一个数,从而找出最小的,然后第二个数与后面的每一个数依次比较,从而找出第二小的,然后第三个数与后面的每一个数依次比较,从而找出第三小的.....直到找到最后一个数。
嘿嘿,原理知道了,那么我们就来代码吧:
package com.shen.maopao;
public class MaoPao {
public static void main(String[] args) {
int[] a={1,4,5,1,0,88,98,232,22,222};
sortChoose(a);
for(int i=0;i<a.length;i++){
System.out.print(" " +a[i]);
}
}
public static void sortChoose(int[] a){
int n = a.length;
for(int i=0;i<n-1;i++){
for(int j=i;j<n-1;j++){
if(a[i]>a[j+1]){
int temp = a[j+1];
a[j+1] = a[i];
a[i] = temp;
}
}
}
}
}
运行结果:
0 1 1 4 5 22 88 98 222 232
分享到:
相关推荐
"浅谈java指令重排序的问题" Java指令重排序是Java虚拟机(JVM)和CPU的优化机制,目的是为了提高程序的执行效率。该机制可以在虚拟机层面和硬件层面对指令进行重新排序,以充分利用CPU的资源。 虚拟机层面的指令...
在本文中,我们将讨论JAVA实现选择排序、插入排序、冒泡排序和两个有序数组的合并。这些排序算法都是基本的排序算法,每种算法都有其特点和应用场景。 首先,选择排序是一种简单的排序算法。其主要思想是每次选择...
- **排序算法**:冒泡排序、选择排序、插入排序、快速排序等。 - **搜索算法**:二分查找、深度优先搜索、广度优先搜索等。 #### 三、J2EE企业级开发 完成了JavaSE的学习后,可以进一步探索J2EE方向,为将来从事...
标题中的“浅谈Java字符串Java开发Java经验技巧共11页”表明这是一份关于Java编程,特别是关于Java字符串处理的深度技术文档。在Java中,字符串是编程中经常遇到的基本数据类型,对于任何Java开发者来说,理解和掌握...
在Java编程语言中,Collection框架是处理集合数据的重要部分,其中包含了List、Set和Map三种主要的数据结构。本文将深入探讨这些数据...在实际开发中,应根据具体需求选择合适的排序策略,以实现高效且易于维护的代码。
### 浅谈Java集合框架 Java集合框架是一个用于存储、操作和检索一组对象的强大工具集。集合框架的设计目的是为了提供一套高效且灵活的数据结构来满足不同的应用需求。本篇文章将详细探讨Java集合框架中的一些核心...
这里我们将探讨如何在Java中实现按值排序的Map,特别关注“按值排序”这一需求。 首先,标准的SortedMap接口是根据键(key)进行排序的,例如TreeMap就是一种按键升序排序的实现。因此,如果想按值排序,我们需要...
本篇文章将深入探讨两个重要的数据结构实现类:Collection和Map,以及它们在Java中的应用。 首先,Collection是Java集合框架的顶层接口,它是所有单值容器的父接口。Collection接口定义了对一组对象进行操作的基本...
本文将从源码分析角度出发,深入探讨Java集合框架中常用的接口和实现类的底层数据结构及其特点,并探讨其在实际业务开发中的应用选择。 Java集合框架中的数据结构主要分为两大类:Collection集合和Map集合。...
在Java编程语言中,`TreeMap` 和 `TreeSet` 是两种基于红黑树数据结构实现的集合类,它们都提供了自动排序的功能。本文将详细探讨 `TreeMap` 和 `TreeSet` 的排序机制以及如何自定义排序规则。 首先,`TreeMap` 是...
在Java中,集合框架的顶层接口是`Collection`,它是所有单值集合的父接口。`Collection`有两个重要的子接口:`Set`(不允许重复元素)和`List`(允许重复元素,保持元素顺序)。 `Set`接口的典型实现有`HashSet`...
Java 中的 Set、List、Map 的区别 Java 中的集合可以存储和操作数目不固定的一组数据。所有的 Java 集合都位于 java.util 包中!Java 集合只能存放引用类型的数据,不能存放基本数据类型。 Collection 接口是最...
Java 中 TreeSet 的两种排序方式 TreeSet 是 Java 中一种基于树形结构的 Set 实现,它具有自动排序的功能。在使用 TreeSet 时,我们可以通过实现 Comparable 接口或提供Comparator 对象来指定排序规则。下面,我们...
总之,理解 Java 集合框架及其接口、实现类及其特性是每个 Java 开发者必备的基础知识,这有助于编写更高效、更易于维护的代码。通过熟练掌握这些概念,你可以更好地处理各种数据结构需求,并为解决实际问题打下坚实...
标题:“浅谈jQuery的应用” 知识点: 1. jQuery简介:jQuery是一个继prototype之后的优秀JavaScript框架,由John Resig创建于2006年初。它简化了JavaScript以及Ajax编程,以“write less, do more”为宗旨,用更...
ArrayList 是 Java 中最常用的集合类型之一,它是一个基于数组实现的动态数组。ArrayList 添加元素的效率是非常高的,因为它可以直接在数组中添加元素,而不需要考虑元素的顺序或去重。 在测试中,ArrayList 添加 ...
"浅谈香农编码的JAVA实现及其效率分析" 香农编码是一种信源编码方法,由Claude Shannon于1948年提出。它的主要目的是为了使信源输出与信道匹配,提高信息传输的效率。香农编码的基本思想是将信源符号按照概率从大到...
总结来说,Java中对对象数组或List的排序主要依赖于`Collections.sort()`,其底层是高效的TimSort算法。对于自定义类,可以通过实现`Comparable`接口或提供`Comparator`来实现排序。理解这些排序机制对于编写高效、...
在很多编程语言中,JsonObject是一种以键值对形式存储数据的容器,例如在Java中通常与JSON库(如org.json, Jackson, Gson等)一同使用。 当处理JsonObject时,我们通常需要遍历其内部的键值对。这通常通过...
2,选择排序:简单选择排序和堆排序 3,交换排序:冒泡排序和快速排序 4,归并排序 5,基数排序 直接插入排序 基本思想:在要排序的一组数,假设前面(n-1)[n>=2]个数已经是排好顺序的,先要把第n个数插入到前面的...