
算法
FanBro
这个作者很懒,什么都没留下…
展开
-
关于遍历
首先再菜也得知道遍历是给二叉树用的吧。遍历一共先序、中序、后序三种,对应着访问根结点的次序是第一位、第二位、第三位。剩下的两步是固定的,遍历左子树然后遍历右子树。原创 2016-12-14 20:08:55 · 242 阅读 · 0 评论 -
链表
初学链表,区别静态链表和动态链表;知其然;什么是单链表;什么是链表?你说得出来吗?原创 2016-12-18 16:44:46 · 562 阅读 · 0 评论 -
查找树比较
二叉查找树(BST),平衡二叉查找树(AVL),红黑树(RBT),B~/B+树(B-tree)。这四种树都具备下面几个优势: (1) 都是动态结构。在删除,插入操作的时候,都不需要彻底重建原始的索引树。最多就是执行一定量的旋转,变色操作来有限的改变树的形态。而这些操作所付出的代价都远远小于重建一棵树。 (2) 查找的时间复杂度大体维持在O(log(N))数量级上。可能有些结构在最差的情况下效率将转载 2016-12-24 21:12:16 · 576 阅读 · 0 评论 -
树初识难点
区别“满二叉树”和“完全二叉树”的概念。满二叉树只要记住深度k和结点数2的k方减1两个点,完全二叉树只要记住它是以满二叉树为基础的一一对应概念。二叉树中的结点的子树,有且只有三种情况:没有子树,一个子树(左子树或者右子树),两个子树。 没有度为1的结点的二叉树叫做严格二叉树。补充映像的理解: 什么是映像?就是不是他本身,但是却和他唯一确定,由他的映像就能确定他,找到他,显示他,比如你的名字就是你原创 2016-12-18 22:59:42 · 748 阅读 · 0 评论 -
平衡二叉树
LR的由来。原创 2016-12-24 20:59:11 · 306 阅读 · 0 评论 -
最小生成树的两个算法
Prim算法顶点开始;Kruskal算法边开始;连通分量的游戏。原创 2016-12-24 00:09:32 · 423 阅读 · 0 评论 -
经典排序算法的设计与实现
理解技巧: 代码中遇到while(){}循环时,先考虑跳过循环的情况(即不满足判断条件的情况),以达到简化代码的目的。这样反而能帮助理解while(){}循环的作用。关注变量在程序中是否发生变化(或者说有没有被赋值):没有发生,则说明此变量是用来保存重要数据的;发生了,则留心发生了几次变化,分别在哪行执行的。使用索引是为了遍历。%取最后一位的数字,/取第一位上的数字。原创 2016-12-21 18:13:05 · 1448 阅读 · 0 评论 -
栈
知其然:深度优先遍历之退栈,拓扑排序暂存入度为0的顶点;栈,代码实现之我的理解;原创 2016-12-18 22:36:52 · 493 阅读 · 0 评论 -
选择排序和冒泡排序
初学排序回顾选择排序说明 将要排序的对象分作两部份,一个是已排序的,一个是未排序的,从后端未排序部份选择一个最小值,并放入前端已排序部份的最后一个,例如:排序前:70 80 31 37 10 1 48 60 33 80 [1] 80 31 37 10 70 48 60 33 80 选出最小值1 [1 10] 31 37 80 70 48 60 33 80 选出最小值10 [1 10 31]转载 2016-12-16 20:23:57 · 471 阅读 · 0 评论 -
折半查找判定树及平均查找长度
从折半查找的过程看,以有序表的中间记录作为比较对象,并以中间记录将表分割为两个子表,对子表继续上述操作。所以,对表中每个记录的查找过程,可用二叉树来描述,二叉树中的每个结点对应有序表中的一个记录,结点中的值为该记录在表中的位置。通常称这个描述折半查找过程的二叉树为折半查找判定树。长度为n的折半查找判定树的构造方法为:⑴ 当n=0时,折半查找判定树为空;⑵ 当n>0时,折半查找判定树的根结点是有序表中转载 2016-12-17 12:49:13 · 15643 阅读 · 2 评论 -
struct和typedef使用的辨析
首先理一下对于学习数据结构很重要的基础知识。比如,绝对理解下面的定义方式:typedef struct LNode{ ElemType data; struct LNode *next; } LNode, *LinkList;如果不理解,那你应该看看下面的:struct LNode{ ElemType data; struct LNode *next; };typed原创 2016-12-05 23:33:51 · 2252 阅读 · 0 评论 -
背景运动补偿具体思路
获取摄像机位置(Awake) 初始化摄像机以前的位置(Start) 计算每帧背景各层的运动量 计算相机运动量fparallax fparallax = (CamPrePos.x - cam.position.x) * parallaxFactor 计算各层的运动量 bkNewX = BackGrounds[i].position.x+fparallax*(1 + FramesFacto转载 2017-05-23 18:24:12 · 2089 阅读 · 0 评论