/** * 求1000以内的所有水仙花数.它的各位数字的立方相加等于这个数本身.。 */ public class NumberOfDaffodils { public static void main(String[] arg0) { for(int i=100;i<=999;i++){ int a,b,c; a=i / 100; // 符号 /是求余 % 是求商 b=i % 100 / 10; c=i % 10; if(i==a*a*a+b*b*b+c*c*c){ System.out.println(i); } } } }
输出结果:
1 /** 2 * 冒泡排序 3 */ 4 public class BubbleSort { 5 public static void main(String[] arg0) { 6 int[] arr ={6,3,8,2,9,1}; 7 System.out.println("排序前:"); 8 for(int i:arr){ 9 System.out.print(i+","); 10 } 11 12 for(int i=0;i<arr.length-1;i++){ //外层控制的是:循环的趟数 13 for(int j=0;j<arr.length-1-i;j++){ //内层控制的是: 每趟比较了几次 14 if(arr[j]>arr[j+1]){ 15 int temp=arr[j]; 16 arr[j]=arr[j+1]; 17 arr[j+1]=temp; 18 } 19 } 20 } 21 System.out.println("排序后:"); 22 for (int i : arr) { 23 System.out.print(i+","); 24 } 25 } 26 }
输出结果:
选择排序:
1 /** 2 * 选择排序. 每次寻找最小(或最大)的数,放在头或者未. 3 */ 4 public class selectionSort { 5 public static void main(String[] arg0) { 6 int[] arr ={6,3,8,2,9,1}; 7 System.out.println("排序前:"); 8 for(int i:arr){ 9 System.out.print(i+","); 10 } 11 12 for(int i=0;i<arr.length-1;i++){ //外层控制的是:循环的趟数 13 int minIndex=i; //从第i个开始比较,寻找最小的数. 14 for(int j=i+1;j<arr.length;j++){ //i的下一个和i进行比较 15 if(arr[j]<arr[minIndex]){ 16 minIndex = j; //记录最小下标 17 } 18 } 19 int temp=arr[i]; 20 arr[i]=arr[minIndex]; 21 arr[minIndex]=temp; 22 } 23 System.out.println("排序后:"); 24 for (int i : arr) { 25 System.out.print(i+","); 26 } 27 } 28 }