DS
sunny_fbw
这个作者很懒,什么都没留下…
展开
-
单链表<二>关于链表的算法
链表的排序 链表的按值删除 尾删 头删原创 2017-07-10 20:06:37 · 161 阅读 · 0 评论 -
单链表<一>初始化链表和头插法
单链表是一种最简单的链表表示,也叫做线性链表。用它来表示线性表时,用指针表示结点间的逻辑关系。因此单链表的一个存储结点包含两个部分(data 和 next)。 我们需要定义结点(ListNode)类型和一个包含指向物理上头结点(first)、尾结点(last)和记录结点个数(size)的结构体(List)。 则链表结构如下图 我们首先需要初始化出一个链表结构程序如下图原创 2017-06-29 23:48:21 · 818 阅读 · 0 评论 -
RBTree的插入算法
红黑树是具有这样特性的一颗二叉搜索树。 1>每个结点不是红色就是黑色。 2>根结点是黑色。 3>如果结点为红色,其子结点必须为黑色。 4>任以结点至NULL的任何路径,所含黑结点数必须相同。 我的想法是这样的:我们要插入结点则必须找到插入的位置,然后调整平衡。只有当我们插入的结点的父结点是是红色的时候才会出现要调整的问题。 插入算法的难点主要是调整平衡的问题。我以插入结点的父结点是插入结原创 2017-07-13 18:33:45 · 294 阅读 · 0 评论 -
AVL树的插入算法
AVL树是一颗空树或者是左右子树都是AVL树,且左右子树的高度之差绝对值不超过1,我们记为bf。 我们可以有如下的结构定义: template class AVLNode { private: Type data; AVLNode* leftChild; AVLNode* rightChild; int bf原创 2017-07-11 01:17:19 · 1217 阅读 · 0 评论 -
链表是否有环
转载自:http://blog.csdn.net/wangshihui512/article/details/9034157。 有环的链表指的是链表有环路,例如下面:A->B->C->D->B,这样遍历的时候B->C->D->B就形成一个环路一直循环。#include <cstdio> typedef struct list { int data; struct li转载 2017-09-15 23:23:27 · 191 阅读 · 0 评论