java数据结构-排序算法-插入算法
package com.kuang;import java.util.Arrays;/** * @auther 付强 * @date 2020/2/14 - 19:02 */public class insertSort { public static void main(String[] args) { int[] arr=new int[]{11,3,2,53,2,5,9,1}; insertSort(arr); System.out.println(Arrays.toString(arr)); } public static void insertSort(int []arr){ int end=arr.length; //遍历所有的数字 for (int i = 1; i < end; i++) { //如果当前数字比前一个数字小 if(arr[i]<arr[i-1]){ //把当前遍历数字存起来 int temp=arr[i]; int j; //遍历当前数字前面所有数字 for(j=i-1;j>=0&&temp<arr[j];j--){ //把前一个数字赋给后一个数字 arr[j+1]=arr[j]; } //吧临时变量(外层for循环当前的元素)赋给不满足条件的后一个元素 arr[j+1]=temp; } } }}
相关推荐
风吹夏天 2020-07-07
randy0 2020-11-17
lixiaotao 2020-10-07
美丽的泡沫 2020-09-08
nongfusanquan0 2020-08-18
hang0 2020-08-16
earthhouge 2020-08-15
算法改变人生 2020-07-28
troysps 2020-07-19
Broadview 2020-07-19
chenfei0 2020-07-18
yangjingdong00 2020-07-05
数据与算法之美 2020-07-05
shawsun 2020-07-04
数据与算法之美 2020-07-04
要知道时间复杂度只是描述一个增长趋势,复杂度为O的排序算法执行时间不一定比复杂度为O长,因为在计算O时省略了系数、常数、低阶。实际上,在对小规模数据进行排序时,n2的值实际比 knlogn+c还要小。
Evankaka 2020-07-04
田有朋 2020-06-28