Java排序问题

问题描述

从外界输入一组数字,实现排序。1、如果数字是3的就把这个数字删掉。2、如果是0或是能被5整除的数则保持下标不变。最好有java代码。

解决方案

解决方案二:
up
解决方案三:
这个问题没有什么难度!但是觉得你的需求有点问题!如果后面的数,比如末尾的数是55,但是又删掉了几个三!那么怎么保持55的下标不变呢!因为数据的长度变短了!
解决方案四:
如果想保持5的下标不变,那么3的位置只能由0来代替了0可以保持下标不变..
解决方案五:
引用2楼lulu0126的回复:

这个问题没有什么难度!但是觉得你的需求有点问题!如果后面的数,比如末尾的数是55,但是又删掉了几个三!那么怎么保持55的下标不变呢!因为数据的长度变短了!

位置不变就行,下标无所谓。比如输入4,10,3,7,0,6,1排序后为1,10,4,6,0,7
解决方案六:
读取输入的数字如果是0或者能被5整除的就把这个数和下标记录下来,如果是3则删除,否则把这个数字插入合适的位置,最后再把记录下来的0或者能被5整除的数插入它原来的位置(下标已经有了)
解决方案七:
哦是1,10,4,0,6,7
解决方案八:
引用5楼cuifanghua的回复:

读取输入的数字如果是0或者能被5整除的就把这个数和下标记录下来,如果是3则删除,否则把这个数字插入合适的位置,最后再把记录下来的0或者能被5整除的数插入它原来的位置(下标已经有了)

方便的话还是代码描述吧,呵呵
解决方案九:
引用7楼laplacepc的回复:

引用5楼cuifanghua的回复:读取输入的数字如果是0或者能被5整除的就把这个数和下标记录下来,如果是3则删除,否则把这个数字插入合适的位置,最后再把记录下来的0或者能被5整除的数插入它原来的位置(下标已经有了)方便的话 还是代码描述吧, 呵呵

方便的话,还是你自己代码描述吧,这些都是基础的东西。
解决方案十:
publicstaticvoidmain(String[]args){inttmp,i,j,max;inta[]={6,5,4,3,15,1,2,9,0,7,10,8,12,20,11};Listlist=newArrayList();for(i=0;i<a.length;i++){if(a[i]==3)continue;list.add(a[i]);}Integer[]b=newInteger[list.size()];Iteratorit=list.iterator();i=0;while(it.hasNext()){b[i]=(Integer)it.next();i++;}for(i=0;i<b.length;i++){if(b[i]%5==0||b[i]==0)continue;max=i;for(j=i+1;j<b.length;j++){if(b[max]>b[j])max=j;}if(i!=max){tmp=b[i];b[i]=b[max];b[max]=tmp;}}for(i=0;i<b.length;i++){System.out.print(b[i]+"");}}}输出结果:05115246781091120120的问题没解决,帮忙看下!!

时间: 2024-10-21 20:05:39

Java排序问题的相关文章

一个JAVA排序问题

问题描述 publicstaticvoidmain(String[]args){Listlist=newArrayList();list.add("亞洲冠軍盃特別投注");list.add("亞洲冠軍盃");list.add("亞洲足聯盃");list.add("亞洲足聯盃特別投注");list.add("法國聯賽U19");list.add("法國聯賽U19特別投注");list.ad

java-JAVA排序问题求若干个数的数组中第k个最大值

问题描述 JAVA排序问题求若干个数的数组中第k个最大值 代码: import java.util.Scanner; public class Sorting0{ public int[] sort(int[] num){ for(int i=0;i<num.length;i++){ for(int j=0;j<num.length-i-1;j++){ if(num[j]<num[j+1]){ int n=0; n=num[j]; num[j]=num[j+1]; num[j+1]=n;

关于java 快速排序问题 这个输出报错 我认为 while 有问题 求大神指导

问题描述 关于java 快速排序问题 这个输出报错 我认为 while 有问题 求大神指导 package QuickSort; import java.util.ArrayList; public class QuickSort { public static void main(String[] args) { ArrayList<Integer> lists = new ArrayList<Integer>(); lists.add(5); lists.add(2); lis

java 集合排序问题,谢谢指导。

问题描述 java 集合排序问题,谢谢指导. 有一串分数我存在了rationalList集合里,然后要求对分数按倒数大小对分数进行排序 ListrationalList = new ArrayList<>(); Collections.sort(rationalList,new InverseComparator()); public class InverseComparator implements Comparator { // 比较两个分数倒数的大小 @Override public

java jtable数据排序问题

问题描述 java jtable数据排序问题 我要让表格中的一列数据以数据类型进行排序,需要重写defaulttable的getcolunmnClass的方法,但是我的数据是先点击一个按钮再传输进去的,这样如果先重写那个方法,此时列表中的数据为Null,会报错,那么应该怎么办呢? 解决方案 Java 中JTable 数据刷新问题 解决方案二: 在后台就让数据以类型排序呗

对象-JAVA 菜鸟 问一个菜鸟问题 list 的排序问题

问题描述 JAVA 菜鸟 问一个菜鸟问题 list 的排序问题 简化一下 list 情况 比如 一个 student 类 只有两个参数 学号 sno 和 成绩 grade 现全放入 ArrayList中 如何按成绩 将 学生对象排序 实现目标如下即可 002 97 003 95 001 90 求各位路过大神 不吝指教后生 解决方案 先自己定义一个对比的方法类 class MyIntComparator implements Comparator{ public int compare(Objec

浅谈java Collection中的排序问题_java

这里讨论list.set.map的排序,包括按照map的value进行排序. 1)list排序 list排序可以直接采用Collections的sort方法,也可以使用Arrays的sort方法,归根结底Collections就是调用Arrays的sort方法. public static <T> void sort(List<T> list, Comparator<? super T> c) { Object[] a = list.toArray(); Arrays.

Java使用Comparable解决排序问题_java

本文实例讲述了Java使用Comparable解决排序问题的方法.分享给大家供大家参考.具体实现方法如下: 一次举重竞赛的比赛规则是:选手的成绩以成功举起的总重量来排序,举起总重量多的排在前面:当举起总重量相同时,按照体重来排序,体重轻的排在前面:要求程序读取数据文件作为输入,并按照上述规则排序后,打印出选手编号:数据文件说明如下:现有5名选手,其选手编号.成功举起的总重量及其体重如数据文件data4.txt,样例内容为: <p> <no>1</no> <lw&g

java中文排序问题(转)

在Java中,对一个数组或列表(在本文中统称为集合)中的元素排序,是一个很经常的事情.好在Sun公司在Java库中实现了大部分功能.如果集合中的元素实现了Comparable接口,调用以下的静态(static)方法,就可以直接对集合排序. // 数组排序方法// 数组中的元素可以是像int这样的原生类型(primitive type), 也可以是像String这样实现了Comparable接口的类型,这里用type表示. java.util.Arrays.sort(type[] a); // 列