数据结构与算法
数据结构与算法
基础不牢,地动山摇...
这个作者很懒,什么都没留下…
展开
-
数据结构 Hash表解读(哈希表)
参考链接:https://blog.csdn.net/u011109881/article/details/80379505一、什么是Hash表要想知道什么是哈希表,那得先了解哈希函数哈希函数对比之前博客讨论的二叉排序树 二叉平衡树 红黑树 B B+树,它们的查找都是先从根节点进行查找,从节点取出数据或索引与查找值进行比较。那么,有没有一种函数H,根据这个函数和查找关键字key,可以直接确定查找值所在位置,而不需要一个个比较。这样就**“预先知道”**key所在的位置,直接找到数据,提升效率。转载 2020-08-18 06:05:17 · 478 阅读 · 0 评论 -
二叉树(BT)、二叉查找树(BST)、平衡二叉树(AVL)、B-Tree、B+Tree、红黑树(BRT)
目录树的概念树的分类二叉树二叉查找树平衡二叉树(AVL)B-Tree(平衡多路查找树)B+Tree红黑树左旋右旋时间复杂度树形结构是一类重要的非线性数据结构,其中以树和二叉树最为常见,直观来看,树是以分支关系定义的层次结构。树的概念树(Tree)是n(n≥0)个节点的有限集。在任意一棵非空树中:1、有且仅有一个特定的成为根(Root)的节点2、当n>1时,其余节点可分为m(m>0)个互不相交的有限集,其中每个集合本身又是一棵树,并且原创 2020-08-16 19:08:26 · 2447 阅读 · 0 评论 -
时间复杂度
参考文章:https://www.jianshu.com/p/f4cca5ce055a时间复杂度是衡量算法好坏的一个重要指标,一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数f(n),进而分析f(n)随n的变化情况并确定T(n)的数量级。这里用"O"来表示数量级,给出算法的时间复杂度。 T(n)=O(f(n)); 它表示随着问题规模的n的增大,算法的执行时间的增长率和f(n)的增长率相同,这称作算法的渐进时间复杂度,简称时间复杂度。而我们一...原创 2020-08-16 09:46:52 · 324 阅读 · 0 评论