![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构和算法
骑驴逛超市668
这个作者很懒,什么都没留下…
展开
-
B+树详细图解
转载自:伯乐专栏作者/玻璃猫,微信公众号 - 梦见漫画:什么是b+树这一次我们来介绍 B+ 树。一个m阶的B树具有如下几个特征:1.根结点至少有两个子女。2.每个中间节点都包含k-1个元素和k个孩子,其中 m/2 <= k <= m3.每一个叶子节点都包含k-1个元素,其中 m/2 <= k <= m4.所有的叶子结点都位于同一层。...转载 2019-10-16 11:27:32 · 573 阅读 · 1 评论 -
B-树详细图解
本文提到的「B-树」,就是「B树」,都是 B-tree 的翻译,里面不是减号-,是连接符-。因为有人把 B-tree 翻成 「B-树」,让人以为「B树」和「B-树」是两种树,实际上两者就是同一种树。————————————————————————二叉查找树的结构:...转载 2019-10-16 11:26:58 · 255 阅读 · 0 评论 -
各种数据结构分析
一、数组和单链表的分析?二、栈和队的分析?一、线性表线性表是最常用且最简单的一种数据结构,它是n个数据元素的有限序列。实现线性表的方式一般有两种,一种是使用数组存储线性表的元素,即用一组连续的存储单元依次存储线性表的数据元素。另一种是使用链表存储线性表的元素,即用一组任意的存储单元存储线性表的数据元素(存储单元可以是连续的,也可以是不连续的)。数组实现数组是...原创 2019-09-17 14:28:19 · 1388 阅读 · 0 评论 -
算法(一)时间复杂度
1.算法的效率虽然计算机能快速的完成运算处理,但实际上,它也需要根据输入数据的大小和算法效率来消耗一定的处理器资源。要想编写出能高效运行的程序,我们就需要考虑到算法的效率。算法的效率主要由以下两个复杂度来评估:时间复杂度:评估执行程序所需的时间。可以估算出程序对处理器的使用程度。空间复杂度:评估执行程序所需的存储空间。可以估算出程序对计算机内存的使用程度。设计算法时,一般是要先考虑系统环...转载 2019-10-08 11:10:39 · 348 阅读 · 0 评论 -
算法(二)初等排序前篇[插入和希尔排序]
前言排序是算法的基础,排序有很多种方法,有些方法实现起来很简单,但是效率较差,我们可以将这些排序的方法称之为初等排序。这篇文章我们就来学习初等排序中的插入排序和冒泡排序。1.插入排序插入排序比较容易想到,思路与打扑克时排列牌的顺序是类似的。比如我们左手拿牌,然后用右手将牌从左到右,从小到大来排序,这就需要我们把需要进行排列的牌抽出来放到合适的位置,并且不断的重复,直到牌的顺序排好,这个...转载 2019-10-09 11:26:32 · 81 阅读 · 0 评论 -
算法(三)初等排序后篇[选择和冒泡排序]
1.选择排序根据上一篇文章讲到的插入排序和希尔排序,我们把选择排序的数组也分为已排序部分和未排序部分。图解选择排序在用图来讲解选择排序之前,我们要先了解选择排序的规则。选择排序的规则就是重复执行以下的处理:1.找出未排序部分最小值的位置min。2.将min位置的元素与未排序部分的起始元素做对比,如果顺序错误则将它们进行就交换。以数组a={5,4,8,7,9,3,1}为例,我们...转载 2019-10-09 11:26:56 · 64 阅读 · 0 评论