![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
歌颂者_
坚持学习的小白一枚
展开
-
二分查找(java实现)
二分查找是二分算法中的一种,主要分为整数二分和浮点数二分。其中,整数二分又分为两种情况,寻找左边界和寻找右边界,不同情况对应不同的模板。(注意:单调性不是二分的必要条件)原创 2024-09-12 15:06:37 · 354 阅读 · 0 评论 -
归并排序(java实现)
归并排序的核心思想也是分治,分而治之,不同于快速排序的是,归并排序是先递归处理左右两部分数组,将左右两部分数组都排序号之后,再合并成新的有序数组。原创 2024-09-11 20:08:42 · 82 阅读 · 0 评论 -
冒泡排序(java实现)
外循环n次,是为了保证每个元素都有n次交换的机会,移动到正确位置。左边比右边大,则交换位置。原创 2024-09-11 16:02:32 · 77 阅读 · 0 评论 -
希尔排序(java实现)
希尔排序的核心思想与插入排序一样,都是将待排序数组分成有序和无序两部分,然后遍历有序部分,依次将无序序列中的每个元素插入到有序序列中的合适位置,直到gap为1为止。原创 2024-09-11 15:35:36 · 65 阅读 · 0 评论 -
快速排序(java实现)
快速排序的核心思想是分治思想,分而治之,递归处理左右两边的数组,选取数组中的任意一个值,将这个值作为参照,小于等于的放左边,大于等于的放右边,递归结束,排序完成。原创 2024-09-11 18:41:18 · 121 阅读 · 0 评论 -
插入排序(java实现)
插入排序的核心思想是:将待排数组分成两部分,前面为有序序列,后面为待排序列,依次取出待排序列的值,从后往前依次与有序序列中的每个值进行比较,值大的元素往后移动一位,重复比较,直到遇到更小或者相等的值,则直接插入即可。原创 2024-09-11 14:50:14 · 181 阅读 · 0 评论 -
选择排序(java实现)
选择排序的核心思想是:从左往右遍历待排序数组,每次保存其中最小值的索引,将最小值与待排序数组的开头交换,再进行下一次遍历,直到待排序序列的长度为1。原创 2024-09-11 10:57:52 · 323 阅读 · 0 评论