数组排序到了现在才讲,开课都过了15天了,时间过去一多半了,培训期马上结束了,班里人还没认识几个···
- package practice;
- public class ArrayDemo {
- /**
- * @param args
- */
- int [] arr={1,2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,
- 12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,2,15,
- 16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,
- 89,41,2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,
- 1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,
- 12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,
- 5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,
- 4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,2,15,
- 16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,2,
- 15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41,2,15,16,4879,5454,12564,1165,12,89,41,
- 2,15,16,4879,5454,12564,1165,12,89,41};
- public static void main(String[] args) {
-
- Time t1=new ArrayDemo().new Time1();
- System.out.println(t1.getTime());
- Time t2=new ArrayDemo().new Time2();
- t2.getTime();
- System.out.println(t2.getTime());
- }
- class Time1 extends Time{
- @Override
- public void runCode() {
- // TODO Auto-generated method stub
- ArrayDemo.selectSort(new ArrayDemo().arr);
- }
-
- }
- class Time2 extends Time{
-
- @Override
- public void runCode() {
- // TODO Auto-generated method stub
- ArrayDemo.selectSort(new ArrayDemo().arr);
- }
-
- }
-
- //选择排序
- public static int[] selectSort(int [] arr){
- for (int i = 0; i < arr.length; i++) {
- for (int j = 0; j < arr.length; j++) {
- if (arr[i] < arr[j]) {
- swap(arr, j, i);
- }
- }
- }
- return arr;
- }
-
-
- //冒泡排序
- public static int[] bubbleSort(int[]arr){
- for (int i = 0; i < arr.length; i++) {
- for (int j = 0; j < arr.length-i-1; j++) {
- if (arr[j] > arr[j+1]) {
- swap(arr, j, j+1);
- }
- }
- }
- return arr;
- }
-
- //位置互换
- private static void swap(int[] arr,int m,int n){
- if (arr[m] > arr[n]) {
- int temp=arr[m];
- arr[m]=arr[n];
- arr[n]=temp;
- }
- }
- }
- abstract class Time{
-
- public abstract void runCode();
- public final long getTime(){
- long beginTime=System.currentTimeMillis();
- runCode();
- return System.currentTimeMillis()-beginTime;
- }
- }
复制代码 这个数组有点牛逼,一顿疯狂复制粘贴,为了区分二者效率,没办法。
哥们复制一下代码。运行一下就知道了。
数组比较大的时候,BubbleSort确实要比SelectSort效率高,比如我现在的是数组,从运行结果就能明显看出来
|