java-JAVA中选择排序无法输出

问题描述

JAVA中选择排序无法输出

代码如下:
public class SelectSort {
public static void ChoiceSort(int[] a)
{
int temp;
for(int i=0;i<a.length;i++){
int min=i;
for(int j=i+1;j<a.length;i++)
if(less (a[j],min))
min=j;

    }

}
public static boolean less(Comparable v,Comparable w)
{
    return  v.compareTo(w)<0;
}
public static void exch(Comparable[] a,int i,int j)
{
    Comparable t=a[i];
    a[i]=a[j];
    a[j]=t;
}
public static void main(String[] args)
{

    int[] a={5,6,8,2,3,4,7,9,11};
    ChoiceSort(a);
   System.out.println(a);
}

}

解决方案

for(int j=i+1;j<a.length;i++) 改成 for(int j=i+1;j<a.length;j++)

解决方案二:

java 选择排序
java选择排序
java_选择排序

解决方案三:

不知道你想干啥,你是要将数组重新排序么?

解决方案四:

"for(int j=i+1;j<a.length;i++)"中改为"for(int j=i+1;j<a.length;j++)"

解决方案五:

public class SelectSort {
public void ChoiceSort(int[] a)
{
int temp;
for(int i=0;i
int min=a[i];
int k = i;
for(int j=i+1;j
{
if(min>a[j]) {
min=a[j];
k=j;
}
}
int t;
if(a[i]!=min)
{
t=a[i];
a[i]=min;
a[k]=t;
}
}

}
public static void main(String[] args)
{
SelectSort selectSort=new SelectSort();
int[] a={5,6,8,2,3,4,7,9,11};
selectSort.ChoiceSort(a);
for(int i=0;i<a.length;i++)
System.out.println(a[i]);
}
}

解决方案六:

for(int j=i+1;j<a.length;i++) 这里写错了吧,i?应该是j吧

解决方案七:

把第二从for循环中的i++改成j++

时间: 2024-12-30 12:59:31

java-JAVA中选择排序无法输出的相关文章

如何从java agent中向web页面输出图形

问题描述 只知道从javaagent中向web页面输出文字,PrintWriterout=getAgentOutput();out.println();但是要输出图形怎么办呢?我加载了awt以及awt.image包,用Graphics实例作图,然后想输出图形到web页面...请高人指点.谢谢! 解决方案 解决方案二:这个需要用applet才可,要不你在后台生成图片.解决方案三:我用过applet和servlet的方法,但是感觉都有缺陷:applet客户端安全性问题:servlet只能在文件系统中

深入Java冒泡排序与选择排序的区别详解_java

冒泡排序它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成.代码如下: 复制代码 代码如下: public class nums {     public static void main(String[] args){         int []nums = {5,4,3,2,1};         for(int i = 0; i < nums.length; i++){        

JAVA数组之选择排序算法

注意选择排序和冒泡排序的异同点: 它们两者比较的次数一样,O[N^2]的时间. 但选择排序的交换次数要比冒泡少.我想是因为它在每次循环之前,就设计了一个锚点.(如下面的MIN),这样就避免了已排序好的元素再交换.其适用于排序量少而交换多. public void insert(long value) { int j; int i; long temp; long min; a[nElems] = value; nElems++; for(j = 0; j < nElems; j++){ min

java冒泡排序和选择排序示例_java

冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面.即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后.然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后.至此第一趟结束,将最大的数放到了最后.在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二

Java编程中10个最佳的异常处理技巧_java

在实践中,异常处理不单单是知道语法这么简单.编写健壮的代码是更像是一门艺术,在本文中,将讨论Java异常处理最佳实践.这些Java最佳实践遵循标准的JDK库,和几个处理错误和异常的开源代码.这还是一个提供给java程序员编写健壮代码的便利手册.Java 编程中异常处理的最佳实践 这里是我收集的10个Java编程中进行异常处理的10最佳实践.在Java编程中对于检查异常有褒有贬,强制处理异常是一门语言的功能.在本文中,我们将尽量减少使用检查型异常,同时学会在Java编程中使用检查型VS非检查型异常

Java开发中异常处理的最佳实践

异常处理是Java 开发中的一个重要部分.它是关乎每个应用的一个非功能性需求,是为了处理任何错误状况,比如资源不可访问,非法输入,空输入等等.Java提供了几个异常处理特性,以try,catch 和 finally 关键字的形式内建于语言自身之中.Java 编程语言也允许你创建新的异常,并通过使用 throw 和 throws关键字抛出它们.事实上,在Java编程中,Java的异常处理不单单是知道语法这么简单,它必须遵循标准的JDK库,和几个处理错误和异常的开源代码.这里我们将讨论一些关于异常处

C++实现树形选择排序 (tree selection sort)

算法逻辑: 根据节点的大小, 建立树, 输出树的根节点, 并把此重置为最大值, 再重构树. 因为树中保留了一些比较的逻辑, 所以减少了比较次数. 也称锦标赛排序, 时间复杂度为O(nlogn), 因为每个值(共n个)需要进行树的深度(logn)次比较. 参考<数据结构>(严蔚敏版) 第278-279页. 树形选择排序(tree selection sort)是堆排序的一个过渡, 并不是核心算法. 但是完全按照书上算法, 实现起来极其麻烦, 几乎没有任何人实现过. 需要记录建树的顺序, 在重构时

java-Java中关于排序sort方法

问题描述 Java中关于排序sort方法 import java.util.Arrays; public class Testsort { public static void main(String [] args) { int [] arra={67,56,324,59,3,56,6}; Arrays.sort(arra); for(int n=0;n<=arra.length;n++) { System.out.print(arra[n]); } } } 怎么没法输出结果? 解决方案 fo

Word文档的表格中数据排序的方法

  Word文档的表格中数据排序的方法         1.在表格中单击将插入点光标放置到任意单元格中,然后在"表格工具-布局"选项卡中单击"数据"组中的"排序"按钮,如图1所示. 图1 单击"排序"按钮 2.打开"排序"对话框,在"主要关键字"下拉列表中选择排序的主要关键字,在"类型"下拉列表框中选择排序标准,然后单击其后的"降序"单选按钮选择以