数据结构
文章平均质量分 79
庐州小白
这个作者很懒,什么都没留下…
展开
-
数据结构中的逻辑结构和物理结构
逻辑结构和物理结构是数据结构中重要的两个概念。所谓逻辑结构,简单来说就是理解上的两个数据元素的关系,它很直观。学术点说就是数据对象中两个数据元素之间的相互关系,一般可以用一种偏序表示方法进行表示。可以简单的认为,我们学习数据结构就是学习数据元素的逻辑结构。逻辑结构可以划分为:集合:顺序结构:比如 线性表、链表、队列、栈非顺序结构: 树型结构: 比如 二叉树、堆 图型结构: 图...原创 2020-02-29 18:44:13 · 2436 阅读 · 0 评论 -
冒泡排序(BubbleSort)
冒泡排序是一个经典的排序算法,它的原理简单,在数据不多的前提下可以取得良好的效果。 算法原理:每次比较待排列序列中相邻两个数字,若是逆序,则交换两个数字位置,从左至右每两个相邻数字都完成了一次比较,则称完成了一趟比较。假设序列元素为n的前提下,最多n趟就可以完成排列任务。第一趟排列待排列序列3、5、4、2、1第一次比较3、5、4、2、1第二次比较3、4、5、2、1第三次比较3、4、2...原创 2018-06-05 17:22:28 · 179 阅读 · 1 评论 -
快速排序(QuickSort)
快速排序,简称快排,是一种十分常用的排序算法,一般情形下拥有O(n*logn)的复杂度。 算法思想: 快排的算法思想是在递归的基础上实现的,每次选择待排列序列中的一个数字,一般是待排列序列的第一个数字,作为主元,将大于主元的数字放在右边,小于主元的数字放在左边。递归进行就可以完成排序。 算法伪码: 该算法的伪码有两种典型的写法。先介绍第一种,它出现在严蔚敏老师的《数...原创 2018-06-05 23:19:30 · 717 阅读 · 1 评论 -
归并排序(MergeSort)
归并排序是数据结构中常用的一种排序算法,它原理上简单,易于理解。它基于分治法策略:先做划分,再做排序。归并排序的思想来源于一个朴实的想法,即,部分有序的序列要比完全无序的序列更便于排序。我们先给出算法的伪码:dataList mergeSort(dataList& L) { if(Length(L) <= 1) { return L; ...原创 2019-07-01 11:38:00 · 273 阅读 · 0 评论