前言
正在读《数据结构与算法图解》一书,被其简单明了的讲解折服,其中涉及到了很多有用的算法,为了加深印象以及理解,便跟着把其中的代码转换为我平时所使用的的语言java。
每种算法的时间复杂度标识出来。
第 1 章 数据结构为何重要
第 2 章 算法为何重要
第 3 章 大O记法
第 4 章 运用大O来给代码提速
第 5 章 用或不用大O来优化代码
第 6 章 乐观地调优
1、插入排序
- 时间复杂度
/**
* @author xch
* @params [arrays]
* @return int[]
* @description 插入排序
*/
public static int[] insertSort(int [] arrays) {
for (int i = 1; i < arrays.length; i++) {
int position = i;
int temp = arrays[i];
while (position > 0 && arrays[position - 1] > temp) {
arrays[position] = arrays[position - 1];
position = position - 1;
}
arrays[position] = temp;
}
System.out.println(JSON.toJSONString(arrays));
return arrays;
}
来源:CSDN
作者:象话
链接:https://blog.csdn.net/qq_34908167/article/details/103728850