大神大神求讲解下面JAVA中数组排列的题目~新手求解答~
import java.util.Scanner;public class Test { public static void main(String[] args) { int[] array = new int[1000]; for (int i = 0; i b 返回true */ public static boolean compare(int a, int b, String type) { int hundredsDigitA = a / 100; int tenDigitA = a % 100 / 10; int singleDigitA = a % 100 % 10; int hundredsDigitB = b / 100; int tenDigitB = b % 100 / 10; int singleDigitB = b % 100 % 10; if("B".equalsIgnoreCase(type)) { // 十位>个位>百位 if (tenDigitA > tenDigitB) { return true; } else if(tenDigitA singleDigitB) { return true; } else if(singleDigitA hundredsDigitB) { return true; } else if(hundredsDigitA 百位>十位 if (singleDigitA > singleDigitB) { return true; } else if(singleDigitA hundredsDigitB) { return true; } else if(hundredsDigitA tenDigitB) { return true; } else if(tenDigitA 十位>个位 if (hundredsDigitA > hundredsDigitB) { return true; } else if(hundredsDigitA tenDigitB) { return true; } else if(tenDigitA singleDigitB) { return true; } else if(singleDigitA "); } System.out.println(); }}
不客气的说你的for里面写的很挫,最后三行错了,而且那三行很多余。
你把if里面改写成这样,另外最后三行代码删去。
arr[a] = arr[b];
arr[b] = num;
public class test{
public static void main(String[] arge){
int[] objint={23,6,3,15,13,9,7,18,4,24,8,54,1};
int temp;
System.out.println("方法一:");
System.out.println("排序前");
for (int i = 0; i < objint.length; i++) {
System.out.print(objint[i]+" ");
}
System.out.println("");
System.out.println("排序后");
for(int i=0;i<objint.length;i++){
for(int j=i;j<objint.length;j++){
if(objint[i]>objint[j]){
temp=objint[i];
objint[i]=objint[j];
objint[j]=temp;
}
}
System.out.print(objint[i]+" ");
}
System.out.println("");
System.out.println("方法二:");
Arrays.sort(objint);
for (int i = 0; i < objint.length; i++) {
System.out.print(objint[i]+" ");
}
}
}
public class SortExample {
static int [] intArray1={10,20,30};
static int [] intArray2={40,50,60};
public static void main(String [] args){
SortExample se=new SortExample();
System.out.print("第一个数组中的元素:");
String str="";
for(int a:intArray1){
str+=","+a;
}
System.out.println(str.substring(1));
str="";
System.out.print("第二个数组中的元素:");
for(int a:intArray2){
str+=","+a;
}
System.out.println(str.substring(1));
str="";
int [] returnArray=se.getIntArray();
System.out.print("两数组合并后:");
for(int a:returnArray){
str+=","+a;
}
System.out.println(str.substring(1));
str="";
int [] InvertedArray=se.getInverted(returnArray);
System.out.print("逆序后:");
for(int a:InvertedArray){
str+=","+a;
}
System.out.println(str.substring(1));
}
/**
* 两数组合并
* @return
*/
public int[] getIntArray(){
int intArray3[]=new int[6];
for(int i=0;i<(intArray1.length+intArray2.length);i++){
if(i<intArray1.length){
intArray3[i]=intArray1[i];
}else{
intArray3[i]=intArray2[i-intArray1.length];
}
}
return intArray3;
}
/**
* 数组合并后逆序排序
* @param array
* @return
*/
public int[] getInverted(int[] array){
for(int i=1;i<array.length;i++){
for(int y=0;y<(array.length-i);y++){
int z;
if(array[y]<array[y+1]){//这是从大到小的顺序如果是从小到大只用改动比较运符的方向
z=array[y];
array[y]=array[y+1];
array[y+1]=z;
}
}
}
return array;
}
}
跟你上面打印的一样了
import java.util.Arrays;
public class TestSB {
/**
* @param args
*/
public static void main(String[] args) {
int[] a = {10,20,30};
int[] b = {40,50,60};
int[] c = new int[a.length+b.length];
for(int i = 0;i<c.length;i++){
if(i<=b.length-1){
c[i] = b[i];
}else{
c[i] = a[i-b.length];
}
}
Arrays.sort(c);
for(int i=c.length-1;i>=0;i--){
System.out.println(c[i]);
}
}
}
这个完全是按您所说的写的,希望对您有帮助
import java.util.Arrays;
public class ArrayTest {
public static void main(String[] args) {
int[] one = {10,20,30};
int[] two = {40,50,60};
int[] newArray = new int[one.length + two.length];
System.arraycopy(one, 0, newArray, 0, one.length);
System.arraycopy(two, 0, newArray, one.length, two.length);
dispalyArray("第一个数组中元素:", one, true);
dispalyArray("第二个数组中元素:", two, true);
dispalyArray("两个数组合并后:", newArray, true);
dispalyArray("逆序后:", newArray, false);
}
public static void dispalyArray(String dispaly, int[] array, boolean asc){
System.out.print(dispaly);
if (asc) {
for (int i = 0; i < array.length; i++) {
System.out.print(array[i]);
System.out.print((i != array.length-1) ? "," : "
");
}
} else {
Arrays.sort(array);
for (int i = array.length-1; i >=0; i--){
System.out.print(array[i]);
System.out.print((i != 0) ? "," : "
");
}
}
}
}
大神大神求讲解下面JAVA中数组排列的题目~新手求解答~
import java.util.Arrays;public class test{ public static void main(String[] arge){ int[] objint={23,6,3,15,13,9,7,18,4,24,8,54,1};int temp;System.out.println("方法一:");System.out.println("排序前");for (int i = 0; i < objint.length; i++) { System.out....
求大神讲解一下下面的算法,如图所示
图的下面是一个时间轴,表示各个时间段执行什么作业。第一副图是新作业可以中断当前作业的情况,当执行P1到2时刻,P2到达,此时P1仍需5单位时间,而P2只需4单位时间,所以中断P1,执行P2,以此类推。P1到达时刻是0,花费时间是7,所以预期完成时刻是0+7=7,同理P2预期完成时刻是2+4=6,P3是5,P...
求大神讲解
答案如图:希望可以帮到题主.
求大神给我讲解一下下面的图片,层序地层学
地层层序律是确定同一地区地层相对地质年代的基本方法.当地层因为构造运动发生倾斜但未倒转时,地层层序律仍然适用,这时倾斜面以上的地层新,倾斜面以下的地层老.当地层经剧烈的构造运动,层序发生倒转时,上下关系正好颠倒.地层层序律是对沉积物单纯纵向堆积作用而言.但实际上还存在侧向堆积作用,而绝大部分沉积...
大神求讲解求过程
× 个人、企业类侵权投诉 违法有害信息,请在下方选择后提交 类别 色情低俗 涉嫌违法犯罪 时政信息不实 垃圾广告 低质灌水 我们会通过消息、邮箱等方式尽快将举报结果通知您。 说明 0\/200 提交 取消 领取奖励 我的财富值 -- 去登录 我的现金 -- 去登录 做任务开宝箱 累计完成 0 个任务 10任务 略略...
求大神讲解下面这个高一数学题的步骤,参考答案的没看懂。
比较X平方-2减去X-X平方和1的大小,求出范围,得到X在相应范围上的函数式 再画出图像,并观察图像,当图像与x轴仅有两个公共点时,求出此时c的范围 明白了吗,不懂请追问
求大神帮分析下下面两个程序!!要详细过程!!
if(j%2) continue; \/\/ j=1,3 时跳过下句,j=0,2 进入下句 x++; \/\/ j 循环执行2次 乘上 i 循环2次, 共增 4 } x++; \/\/ i 循环2次 x共增 2 } printf("x=%d\\n",x); \/\/ x共增 2+4+2 = 8,输出 8 } --- for(i=0;i<2;i++) { for(j=0;j<4...
求讲解下面这个停电检测及电子开关切换电路,特别是继电器部分的电路...
继电器的开关侧,+5V接常开,蓄电池接常闭。2、原理分析:作为停电检测及电子开关切换电路,主要完成电压判断与切换控制。IC14为电压比较器;T3为跟随器,进行电流放大;T4为功率开关,驱动继电器。IC14的反相输入端为蓄电池分压(U-),作为基准电压(其电平可视为不变,设置为2.5~3V的某一值);同...
大神求讲解
1:2
大神求讲解
第(1)题,由图中信息可知,甲~丁都位于 南、北纬30°~40°大陆西岸,为地中海气候。第(2)题,华北夏季为雨季,此时,南半球地中海气候区处于多雨期。第(3)题,受海陆分布形势影响,丙地30°S以南为广阔海洋,从而使丙地气候类型分布面积较小。第(4)题,气候除受太阳辐射、大气环流影响...
於饼鱼腥: import java.util.ArrayList; import java.util.List; public class Cat { /** * 快速排序 */ private static void quickSort(List array, int start, int end) { if(start{ int key = array.get(start); int i = start; for(int j = start + 1; j{ if(key > array.get(j)) { int temp = array.get(j); ...
任城区17269426115: 求助Java高手啊~~~~(> - <)~~~~ 作业 数组 排序 最大值 输出 构造 元素 java - ?
於饼鱼腥: import java.util.Arrays; public class Test2 { public static void main(String[] args) { MyArray array=new MyArray(3, 3, 2, 1, 6); System.out.println("最大值是:"+array.maxValue()); array.sort(); array.printArray(); } } class MyArray { private int[] ...
任城区17269426115: Java大神们~急!!! java编程:构造一个包含若干随机数的整数数组并将他们排序,随机数的范围 - ?
於饼鱼腥: public class Demo { public static void main(String[] args) { int a[] = random(5, 10); System.out.print("排序前\t"); for (int i = 0; iSystem.out.print(a[i]+"\t"); } System.out.println("\n"); selectsort(a); System.out.print("排序后\t"); for (int i = 0...
任城区17269426115: 在Java中,定义一个一维整形数组,并给初值,打印所有奇数!求大神讲解越详细越好!偶是小白 - ?
於饼鱼腥: public class Tester {public static void main(String[]args) {int[]a = {1,2,3,4,5,6,7,8,9}; // 定义一个整形数组,并给出初值for (int i = 0; i < a.length; i++) {if (a[i] % 2 != 0) { // 判断是否为奇数(除以2的余数不等于0)System.out.print(a[i]); // 打印这个数System.out.print(" "); // 再打印个空格}}System.out.println(""); // 输出结束的空行} }
任城区17269426115: java,数组拼接,求大神帮忙! - ?
於饼鱼腥: public static void main(String[] args) { List list = new LinkedList(); int size = 3; int[] a = {2, 5, 6, 7, 9, 5, 7}; int[] b = {1, 7, 4, 3, 4}; list.add(a); list.add(b); int[] ints = concatArr(list, size); StringBuilder rs = new StringBuilder(); for (int anInt : ints) { rs.append...
任城区17269426115: JAVA中用选择排序法,按升序顺序输出一维数组中的元素 . 求大神指导一下我,下面是我写的程序,求指正. - ?
於饼鱼腥: 首先你这命名就有问题,选择排序应该是SelectSort吧 你赋值应该要先把要排的数全部装进去 for (int i = 0; i < arr.length - 1; i++) arr[i] = sc.nextInt(); 这样才正确,有了数据再排,你的for循环只输入了一个数,看看你的大括号 这种问题一看就是不会断点调试的
任城区17269426115: Java大神~急! java编程:构造一个包含若干随机数的整数数组并将他们排序,随机数的范围是0~ - ?
於饼鱼腥: 2.1 上机练习 基本题1 ) 编程观察如下输出语句:System.out.println("hello test escape char"); 在“escape”处换上各种转义字符测试输出效果.如何实现如下输出:Hello "test" Hello ' \ test'2 ) 设有如下代码段,考虑赋值转换问题...
任城区17269426115: 用java在1到100000之间生成1000个不重复的数并排序存入数组中,求大神帮忙! - ?
於饼鱼腥: import java.util.Random; import java.util.Set; import java.util.TreeSet; public class Test { public static void main(String[] args) { Set<Integer> set = new TreeSet<Integer>(); Random random = new Random(); while (set.size() < 1000) { set.add(random.nextInt(99999) + 1); } System.out.println(set); } }
任城区17269426115: 求java大神,求解 数组题目! - ?
於饼鱼腥: int[] array =new int[]{1,3,-1,5,-2}; int[] newArray = new int[array.length]; for(int i = array.length -1; i >= 0; i--){ if(array[i] < 0){ continue; }else{ newArray[array.length-i-1] = array[i]; }} System.out.println("原数组为:" + Arrays.toString(array)); System....
任城区17269426115: java编程 求大神指教 给定一个数组,int[]array ={12,1,3,34,121};将其元素按照从小到大的顺序打印出来 - ?
於饼鱼腥: 排序算法排列或者用 辅助类 Arrays 给你了个例子,百度上的// 以下程序是数组的排序操作,在这里使用了 sort 方法对数组进行排序 import java.util.*; public class array004 { public static void main(String[] args) { int a[] = {4,32,45,32,65,32,2} ; ...