- 博客(5)
- 收藏
- 关注
原创 堆排序——Java实现
package sort;import java.util.Arrays;/** * 堆排序:利用树形结构的知识(二叉树、大顶堆、小顶堆) * 先转化为大顶堆,再交换数组首尾元素值,交换后最大值位于数组尾部;将前n-1个元素转化为大顶堆,再交换,以此类推 * 时间复杂度为O(nlogn),性能远超冒泡、简单选择、直接插入排序 * @author:zhaidc@qq.com * @date:2022年2月26日 下午10:59:27 */public class HeapSort .
2022-02-27 12:52:29 99
原创 希尔排序——Java实现
package sort;import java.util.Arrays;/** * 希尔排序:其核心思想为将数组分为若干组,每间隔incre的元素组成一组(注意:是相隔incre,并非连续incre个),对每组进行插入排序,直至间隔减小到1排序结束 * 时间复杂度为o(n3/2) * @author:zhaidc@qq.com * @date:2022年2月26日 下午10:08:14 */public class ShellSort { //测试方法 public stat.
2022-02-26 22:57:42 650
原创 直接插入排序——Java实现
package sort;import java.util.Arrays;/** * 直接插入排序:选择第一个元素为基准,当做已排序部分,依次将后续元素插入至其正确位置,使有序部分长度逐渐加一,最终实现整个数组的排序 * @author:zhaidc@qq.com * @date:2022年2月26日 下午9:11:08 */public class InsertSort { //测试方法 public static void main(String[] args) { in.
2022-02-26 22:07:07 405
原创 直接选择排序——Java实现
package sort;import java.util.Arrays;/** * 直接选择排序,核心思想是每轮循环找出数组的最小值,将之与数组的首位交换,下一轮从下一个元素继续寻找最小值并交换。 * 1.直接选择排序最多仅需交换arr.length-1次便得到有序数组,与冒泡排序相比,性能略微提升 * 2.时间复杂度为o(n2) * @author:zhaidc@qq.com * @date:2022年2月26日 下午8:47:14 */public class Select.
2022-02-26 21:10:17 938
原创 冒泡排序——Java实现
package sort;import java.util.Arrays;/** * 冒泡排序:内层循环从后往前遍历,若比前一个小,则交换位置,最小的元素就像气泡一样浮到最前面 * @author:zhaidc@qq.com * @date:2022年2月26日 下午7:03:02 */public class BubbleSort { //测试函数 public static void main(String[] args) { //测试普通的冒泡排序 int[]...
2022-02-26 20:46:18 341
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人