JAVA面试题之冒泡排序,插入排序及选择排序
2017-06-24 21:47
316 查看
经过几家的面试,发现每次笔试都有一道排序的题目,所以梳理一下,防止在面试中卡壳。
1、使用JAVA实现一个冒泡排序:
源码:
代码分析:见《JAVA之冒泡排序》
2、使用JAVA实现一个选择排序:
源码:
代码分析:见《JAVA之选择排序》
3、使用JAVA实现一个插入排序:
源码:
代码分析:见《JAVA之插入排序》
总结:巩固基础,勇攀高峰!
1、使用JAVA实现一个冒泡排序:
源码:
public static void main(String[] args) { int [] a = {4,1,18,6,5,9}; int [] c = bubbleSort(a); System.out.print("冒泡排序结果: "); for (int i = 0; i < c.length; i++) { System.out.print(c[i]+" "); } } public static int [] bubbleSort(int [] a){ int temp = 0; for(int i=1;i<a.length;i++){ for(int j=0;j<a.length-i;j++){ //一次比较两个元素,如果前者大于后者,就将他们进行交换。 if (a[j] > a[j+1]) { temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } } return a; }
代码分析:见《JAVA之冒泡排序》
2、使用JAVA实现一个选择排序:
源码:
public static void main(String[] args) { int [] a = {7,4,9,13,1,6}; int [] c = chooseSort(a); for (int i = 0; i < c.length; i++) { System.out.print(c[i]+ " "); } } /** * 选择排序: * 从数列中第一位开始,遍历之后的所有,选择出最小的一个放到第一位。 * 接下来从第二位开始,找到数组中第二个小数,放到第二个位置,以此类推。 * @param a * @return */ public static int [] chooseSort(int [] a){ //定义最小数据的下表,默认是第一个 int minIndex = 0; for (int i = 0; i < a.length-1; i++) { minIndex = i; for (int j = i+1; j < a.length; j++) { if(a[minIndex]>a[j]){ minIndex = j; } } //找到最小值的角标,进行交换 if (minIndex != i){ int temp = a[i]; a[i] = a[minIndex]; a[minIndex] = temp; } } return a; }
代码分析:见《JAVA之选择排序》
3、使用JAVA实现一个插入排序:
源码:
public static void main(String[] args) { int [] a = {7,4,9,13,1,6}; int [] c = insertSort(a); for (int i = 0; i < c.length; i++) { System.out.print(c[i]+" "); } } private static int[] insertSort(int[] a) { int inserNode; int j; for (int i = 1; i < a.length; i++) { inserNode = a[i]; j = i-1; while (j>=0 && a[j]>inserNode){ a[j+1] = a[j]; j--; } a[j+1] = inserNode; } return a; }
代码分析:见《JAVA之插入排序》
总结:巩固基础,勇攀高峰!
相关文章推荐
- java的冒泡排序、选择排序与插入排序与二分查找
- Java 实现三种简单排序——选择排序、插入排序、冒泡排序
- java实现 冒泡排序 插入排序 选择排序
- [Java]数组排序-选择排序 冒泡排序 插入排序
- Java 排序 快速排序 冒泡排序 选择排序 插入排序
- Java实现冒泡排序、快速排序、选择排序、插入排序和归并排序
- 冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、堆排序java实现
- Java排序之选择排序、插入排序、希尔排序、冒泡排序
- 冒泡排序、选择排序、插入排序(Java实现)
- 面试题:冒泡排序,选择排序,插入排序,快速排序,归并排序,堆排序
- [Java]数组排序-选择排序 冒泡排序 插入排序
- 冒泡排序、选择排序、插入排序(java)
- java 实现 冒泡排序、选择排序、插入排序。
- Java实现排序(快速排序、冒泡排序、选择排序、基数排序、插入排序)
- Java中的简单排序:冒泡排序,选择排序,插入排序
- java 实现 冒泡排序、选择排序、插入排序。
- java基本算法总结(冒泡排序、选择排序、插入排序)
- java简单排序:选择排序,冒泡排序,插入排序
- 几种常用的排序算法的分析及java实现(希尔排序,堆排序,归并排序,快速排序,选择排序,插入排序,冒泡排序)
- 排序基础之插入排序、冒泡排序、选择排序详解与Java代码实现