![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
来来我是水果
这个作者很懒,什么都没留下…
展开
-
数据结构和算法
1.逻辑结构: 数据元素之间的关系集合结构:元素属于同一个集合。线性结构:元素之间存在一对一的关系。树形结构:一对多层级关系。图形结构(网状结构):元素之间多对多的关系。2. 物理结构: 数据的逻辑结构在计算机中的存储形式顺序存储 :逻辑关系和物理关系是一致的链式存储 (医院排队):比顺序存储结构更灵活。3. 算法: 利用计算机解决问题得步骤...原创 2019-02-28 16:59:16 · 83 阅读 · 0 评论 -
算法复杂度
1. 算法复杂度: 大O阶算法:T(n)=O(f(n)) 随着n变大, T(n)增长最慢为最优 ...原创 2019-02-28 17:17:56 · 92 阅读 · 0 评论 -
冒泡排序
冒泡排序定义:冒泡排序又称交换排序, 是一种简单的排序算法, 它重复的遍历要排序的数列, 一下次比较2 个元素, 如果他们书序错误, 就把它们交换过来。 遍历的数列的工作是重复地进行直到没有需要交换的元素, 也就是说该数列已经排序完成形象的可以理解为:水中上升的气泡, 在上升的过程中, 气泡越来越小, 不断比较相邻2 个元素, 比较大的数往下沉, 较小的数, 往上冒每次遍历都把大...原创 2019-02-28 18:46:12 · 112 阅读 · 0 评论 -
选择排序
选择排序:通过每一趟排序过程中从待排序记录中选择出最小(大)值, 然后将其依次放在数据表的最前面或最后面的方法, 来实现整个数据表的有序排列。分析:在要排序的数组中, 选择一个最小的数, 与第一个位置交换, 然后再剩下的数中, 再选择一个最小的, 与第二个位置的数交换, 依次类推, 直到第n-1个元素(倒数第二个数)和第n个元素(最后一个)比较为止。算法优化: ...原创 2019-02-28 20:56:56 · 112 阅读 · 0 评论 -
快速排序
**快速排序:**通过一趟排序讲要排数的数据分割成对的两个部分, 其中一部分的所有数据都要比另外一部分额所有的数据都要小,然后再按照此方法分别对这两部分数据进行快速排序。整个排序过程可以递归进行, 以达到整个数据集变成有序序列。(冒泡排序的改进型)...原创 2019-03-03 18:21:00 · 101 阅读 · 0 评论 -
各种排序总结
1. 快速排序第一遍排完, 基数左边都比基数小, 右边都比基数大。第二遍, 分别快排基数左边的数组和右边的数组复杂度是:o(nlogn) 最优。 o(n^2) 最坏2. 归并算法先递归切分两个有序的数组进行归并复杂度O(nlogn)3. 冒泡排序每循环依稀, 都找到一个做大的放到后面时间复杂度:一般O(n^2), 最优:O(n)4. 选择排序J 找到最小值的数...翻译 2019-04-12 18:25:05 · 70 阅读 · 0 评论