
算法知识分享
常用算法知识总结,常见算法题解决办法。
ThatMonth
星光不问赶路人,时光不负有心人。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
根据前序遍历和中序遍历生成二叉树,并层序遍历输出二叉树
前序遍历:ABDFCEGH中序遍历:BFDAGEHC。原创 2024-08-20 15:12:45 · 278 阅读 · 0 评论 -
冒泡排序、选择排序、插入排序,三种简单排序算法的区别?
三种排序算法都是使用了两个for循环来遍历,时间复杂度都是O(n的平方),选择排序是不稳定的,其他两种是稳定的,三种算法都涉及到位置的交换,选择排序交换的次数最少。原创 2024-08-13 13:50:27 · 435 阅读 · 0 评论 -
二分查找算法,原理+代码
二分查找(binary search)是一种基于分治策略的高效搜索算法。它利用数据的有序性,每轮缩小一半搜索范围,直至找到目标元素或搜索区间为空为止。原创 2024-06-20 11:16:57 · 108 阅读 · 0 评论 -
蓝桥杯算法-1-位运算
位运算原创 2021-03-28 15:49:52 · 152 阅读 · 0 评论 -
Java排序算法(八):堆排序
排序过程图1:排序过程图2:排序过程图3:原创 2024-05-31 09:31:49 · 300 阅读 · 0 评论 -
Java排序算法(七):桶排序
桶排序的基本思想是,将待排序数组划分成若干个大小相等的子区间(桶),然后将待排序元素逐个插入对应的桶中。接着,对每个桶中的元素进行排序,可以使用其他排序算法,也可以递归地使用桶排序。最后,将各个桶中的元素按照顺序依次取出,即可得到整个数组的排序结果。原创 2024-05-31 09:26:54 · 167 阅读 · 0 评论 -
Java排序算法(六):希尔排序
它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序,希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,再经过一次插入排序,算法便终止。原创 2024-05-31 09:25:19 · 356 阅读 · 0 评论 -
Java排序算法(五):归并排序
的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之)。(divide-and-conquer)策略(分治法将问题。(divide)成一些小的问题然后递归求解,而。的思想实现的排序方法,该算法采用经典的。原创 2024-05-31 09:22:39 · 293 阅读 · 0 评论 -
Java排序算法(四):快速排序
快速排序所采用的思想是分治的思想。所谓分治,就是指以一个数为基准,将序列中的其他数往它两边“扔”。以从小到大排序为例,比它小的都“扔”到它的左边,比它大的都“扔”到它的右边,然后左右两边再分别重复这个操作,不停地分,直至分到每一个分区的基准数的左边或者右边都只剩一个数为止。这时排序也就完成了。原创 2024-05-31 09:20:24 · 311 阅读 · 0 评论 -
Java排序算法(三):插入排序
插入排序的基本思想是: 把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,在有序表中从后往前进行比较,将它插入到有序表中的适当位置,使之成为新的有序表。原创 2024-05-31 09:18:42 · 264 阅读 · 0 评论 -
Java排序算法(二):选择排序
选择排序是最简单直观的一种算法,基本思想为每一趟从待排序的数据元素中选择最小(或最大)的一个元素作为首元素,直到所有元素排完为止,选择排序是不稳定排序。原创 2024-05-31 09:17:04 · 280 阅读 · 0 评论 -
Java排序算法(一):冒泡排序
冒泡排序的基本思想是,对相邻的元素进行两两比较,顺序相反则进行交换,这样,每一趟会将最小或最大的元素“浮”到顶端,最终达到完全有序。原创 2024-05-31 09:14:36 · 423 阅读 · 0 评论 -
Java排序算法汇总篇,八种排序算法
排序算法汇总原创 2024-05-31 09:09:57 · 419 阅读 · 0 评论