Discuss / Java / 三种排序方式

三种排序方式

Topic source
// 选择排序for(int i = 0; i < ns.length; i++) {    for(int j = i + 1; j < ns.length; j++) {        if(ns[j] > ns[i]) {            int temp = ns[j];            ns[j] = ns[i];            ns[i] = temp;        }    }}// 插入排序for(int i = 1; i < na.length; i++) {    int temp = na[i];    int j;    for(j = i - 1; j >= 0; j--) {        //        if(na[j] < temp) {            na[j + 1] = na[j];        } else {            break;        }    }    na[j + 1] = temp;}//冒泡排序for(int i = 0; i < nb.length - 1; i++) {    for(int j = 0; j < nb.length - i - 1; j++) {        if(nb[j] < nb[j + 1]) {            int temp = nb[j];            nb[j] = nb[j + 1];            nb[j + 1] = temp;        }    }}
// 选择排序
for(int i = 0; i < ns.length; i++) {
    for(int j = i + 1; j < ns.length; j++) {
        if(ns[j] > ns[i]) {
            int temp = ns[j];            
            ns[j] = ns[i];
            ns[i] = temp;        
        }
    }
}

// 插入排序
for(int i = 1; i < na.length; i++) {
    int temp = na[i];    
    int j;    
    for(j = i - 1; j >= 0; j--) {
        if(na[j] < temp) {
          na[j + 1] = na[j];        
        } else {
            break;        
        }
    }
    na[j + 1] = temp;
}

//冒泡排序
for(int i = 0; i < nb.length - 1; i++) {
    for(int j = 0; j < nb.length - i - 1; j++) {
        if(nb[j] < nb[j + 1]) {
            int temp = nb[j];            
            nb[j] = nb[j + 1];            
            nb[j + 1] = temp;        
          }
    }
}

  • 1

Reply