排序算法
Posted 好奇害死猫+1
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排序算法相关的知识,希望对你有一定的参考价值。
冒泡排序
用二重循环实现冒泡排序
int[] nums = {4,5,7,4,2}; for (int i=0;i<nums.length-1;i++){ for (int j=0;j<nums.length-1-i;j++){ if (nums[j]>nums[j+1]){ int temp = nums[j]; nums[j] = nums[j+1]; nums[j+1] = temp; } } } for (int num:nums){ System.out.print(num); }
速记口诀:
N个数字类排队
两两相比小靠前
外层循环N-1
内层循环N-1-i
共比较次数: n(n-1)/2
直接插入排序
int [] data = {23,45,16,7,42}; for (int i=1; i<data.length; i++){ int currentData = data[i]; int temp = i; while (temp>0 && data[temp-1]>currentData){ //前一位大于后一位,前一位元素赋值给后一位 data[temp] = data[temp-1]; temp --; } data[temp] = currentData; //交换数据 }
以上是关于排序算法的主要内容,如果未能解决你的问题,请参考以下文章