Java面试必备:排序算法之冒泡、选择排序
作者:网络转载 发布时间:[ 2016/10/21 10:38:04 ] 推荐标签:算法 冒泡排序
前言:作为面试中极为重要的数据结构算法题,排序总是不可避免,然而这些东西容易遗忘,我们曾经无数次的把他们烂记于胸,但无奈,在现实中,用的次数却并不多,久而久之,这些排序的思想虽然还在心中,但如何实现却有点泯然了,如此,也为了即将来的新的面试,再次收拾好心情,好好的整理下这些排序算法,并用我们熟悉的编程语言去实现它,无疑能够在很大程度上加深我们对其的理解,在这里暂且仅用java语言进行实现,C亦或者C++基本上是雷同,废话不多说,先贴出刚刚实现的冒泡排序以及选择排序。。。
冒泡排序和选择排序我不分开写了,人比较懒,放一个代码块了吧。
package com.Arithmetic.chapter1;
import java.util.Random;
/**
*
* @项目名称:Arithmetic
* @类名称:Sort
* @创建人:[czc]
* @创建时间:2016-10-20下午06:30:55
*/
public class Sort {
public static void main(String[] args) {
Random random = new Random();
int [] sort = new int[10];
for (int i = 0; i < sort.length; i++) {
sort[i] = random.nextInt(50);
}
System.out.println("排序前的数组是:");
for(int i:sort){
System.out.print(i+" ");
}
//bubbleSort(sort);
selectSort(sort);
System.out.println();
System.out.println("排序后的数组是:");
for (int i = 0; i < sort.length; i++) {
System.out.print(sort[i]+" ");
}
}
/**
* 冒泡排序
* 依次比较相邻的两个数,将小数放在前面,大数放在后面
* @param sort
*/
public static void bubbleSort(int [] sort){
for(int i = 1;i<=sort.length;i++){
for (int j = 0; j < sort.length-i; j++) {
if (sort[j]>sort[j+1]) {
int temp = sort[j+1];
sort[j+1] = sort[j];
sort[j] = temp;
}
}
}
}
/**
* 选择排序
* 每趟从待排序的数据元素中选出小或大的一元素,放在已排好序的数列的后,直到全部待排序的数据元素排完.
* @param sort
*/
public static void selectSort(int [] sort){
for (int i = 0; i < sort.length-1; i++) {
for (int j = i+1; j < sort.length; j++) {
if (sort[j]<sort[i]) {
int temp = sort[i];
sort[i] = sort[j];
sort[j] = temp;
}
}
}
}
}
后,关于这些算法,过多不做解释,大家有不懂的可以积极提出来,我觉得一般是能看懂的,有写的不当之处也请大家一起指正,共同学习!
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11