
(C++系列02)数据结构
成都fly
这个作者很懒,什么都没留下…
展开
-
时间复杂度说明
大O符号与时间复杂度:http://blog.youkuaiyun.com/u010297957/article/details/51016782时间复杂度log的说明:例如for(int j=1; j<=n; j*=2)这个循环最终执行的次数假设为x,则x次的时候j=2^x 当j>n时停止执行,于是2^x>n 则可以认为该循环一共执行了log2(n)次所以该循环的时间复杂度为o(log2(...转载 2018-03-07 10:36:39 · 480 阅读 · 0 评论 -
理解二叉树,平衡二叉树,红黑树
c++的STL 中set,map是红黑树(红黑树是平衡二叉树的一种),我们需要深入理解红黑树,平衡二叉树的起源。为什么要用红黑树?红黑树的起源,自然是二叉查找树了,这种树结构从根节点开始,左子节点小于它,右子节点大于它。每个节点都符合这个特性,所以易于查找,是一种很好的数据结构。但是它有一个问题,就是容易偏向某一侧,这样就像一个链表结构了,失去了树结构的优点,查找时间会变坏。红黑树就是一种平衡树,...转载 2018-03-06 10:22:00 · 983 阅读 · 0 评论