首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
数据结构与算法
又语
创建于2021-12-04
订阅专栏
个人学习总结
暂无订阅
共10篇文章
创建于2021-12-04
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
排序算法(九)桶排序
桶排序(Bucket Sort)原理是将待排序数据分配到有限数量的桶里,再对每个桶里的数据进行排序,是一种线性时间排序算法。每一个桶(Bucket)代表一个区间范围,里面可以承载一个或多个元素。 第一
排序算法(八)计数排序
计数排序是一种稳定的线性时间排序算法,原理是使用一个额外的数组,其中第i个元素是待排序数组中值等于i的元素的个数。 计数排序的局限性: 计数排序只适用于 整数 排序; 计数排序只适用于一定范围,如果待
排序算法(七)归并排序
归并排序分两个阶段: 第一阶段:分组,假设集合一共有n个元素,算法将会对集合进行逐层的折半分组,一直到每组只有一个元素为止; 第二阶段:归并,每个小组内部比较出先后顺序后,小组之间会展开进一步的比较和
排序算法(六)快速排序
快速排序是对冒泡排序的改进,原理是选择一个基准元素,通过一次排序将要排序的元素分割成独立的两部分,一部分全部小于或等于基准元素,另一部分全部大于或等于基准元素,然后再按照此思路重复对这两部分进行排序。
排序算法(五)选择排序
选择排序(Selection Sort)原理是从待排序的数据中选取最小或最大的一个元素存放在序列的起始位置,然后在剩余未排序的元素中继续寻找最小或最大的元素放到已排序序列末尾,直至待排序的数据元素个数
排序算法(四)冒泡排序
冒泡排序(Bubble Sort),是一种最基础的交换排序。思想是依次比较两个相邻的元素,如果顺序相反则交换这两个元素的位置,重复以上的比较操作直至没有相邻元素需要交换。 复杂度分析 最好情况:O(n
排序算法(三)希尔排序
希尔排序是一种插入排序,是插入排序的改进版本,也成为缩小增量排序(Diminishing Increment Sort)。 希尔排序原理是将待排序的数组元素按下标的一定增量分组,将其分成多个子序列,然
排序算法(二)二分插入排序
二分插入排序是在插入排序的基础上引入【二分查找】的思想。 复杂度分析 最坏情况:O(n²) 最好情况:O(nlog2n) 平均:O(log2n) Java 代码实现 运行结果
查找算法(一)二分查找
二分查找(Binary Search)算法,也称折半查找算法,类似分治思想。 二分查找针对一个有序的数据集合,每次都通过跟区间的中间元素对比,将待查找的区间范围缩小至之前的一半,直至找到要查找的元素,
排序算法(一)插入排序
插入排序基本思想是将一个元素插入到已经排好序的元素序列中,其中前面n-1个元素都是排好序的,现将第n个元素与前面n-1个元素倒序(第n-1个元素 -> 第1个元素)依次对比,直至找到第n个元素的位置。