![](https://img-blog.csdnimg.cn/20210622175337123.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构和算法
简单介绍常用数据结构和算法
珠峰下的沙砾
IT永无止境
展开
-
排序算法-希尔排序
个人理解 思想:将一个无序序列按照分组间隔(分组间隔为当前队列长度的一半)分成若干个小的序列,对这若干个无序的序列按照插入排序的方式进行排序,当对这若干的无序序列进行排序完成之后,再重新计算队列分组间隔(为上次分组间隔的一半) 动图演示 java代码实现 说明 ...原创 2021-06-24 16:30:53 · 69 阅读 · 0 评论 -
排序算法-插入排序
个人理解 插入排序是将一个无序的序列分为两个部分序列有序序列和无序序列,默认第一个元素为有序序列中的元素,从第二个元素开始视为无序序列中的元素,遍历无序序列中的每一个元素和有序序列中的每个元素进行比较,按照一定规则进行对有序序列进行排序。逐渐无序序列中的元素向有序序列中插入,直到遍历完无序序列,剩下的只有排好序的有序序列了。 动图演示 java代码实现 public class InsertionSort { public static void main(String[] args) {原创 2021-06-17 16:08:38 · 118 阅读 · 0 评论 -
排序算法-选择排序
个人理解 每一轮拿出一个元素与所有未排序的元素按照指定规则(从大到小 或从小到大)进行一一比较,,找到比自己大或者小的元素之后进行交换位置,依次完成每一轮的比较直到有序。 动图演示 java代码实现 public class SelectSort{ public static void main(String [] args){ int[] arr = {5, 6, 1, 26, 15, 75, 11, 42}; for(int i = 0; i <原创 2021-06-17 10:46:45 · 57 阅读 · 0 评论 -
排序算法-冒泡排序
个人理解 冒泡排序简单的说就是一组无序数据从第一个元素开始按照一定规则(从小到大 还是从大到小)元素两两交替进行比较,交换。直到最后一个元素(其实到倒数第二个元素就行),就行气泡一样元素会按照规定大或小的元素一层一层冒出来排在最后,最终就称为了一个有序序列。 动图演示: java代码实现 public class BubbleSort { public static void main(String[] args) { // 无序数组 int[] arr = {5原创 2021-06-16 23:21:56 · 119 阅读 · 1 评论