上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 17 下一页
摘要: 伸展树 一、伸展树的基本知识 1、基本思想:一个节点被访问后,它通过一系列的旋转,将节点放到树根上 2、展开:当一项x作为一片树叶被插入时,称为展开的一系列树的旋转使得x成为树的新根。 种类: (1)x的父节点为根节点,直接单左(右)旋即可 (2)x有父亲(p)和祖父(g) 主要有三种旋转:单旋转, 阅读全文
posted @ 2018-12-03 21:52 麟阁 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 1、定义:AVL(平衡二叉树)是带有平衡条件的二叉查找树。 2、性质: (1)平衡二叉树的深度是O(logN) (2)平衡二叉树是有平衡条件的二叉树,所以在搜索二叉树的基础上加上平衡二叉树的高度。 (3)在高度为h的平衡二叉树中,最少节点数S(h)=S(h-1)+S(h-2)+1 S(0)=1,S( 阅读全文
posted @ 2018-12-01 17:28 麟阁 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 思路: (1)搜索二叉树的结构就是二叉树的左右两个节点,所有左子节点的值小于右子节点的值,然后还要有一个lazy标志,用于lazy删除。 (2)搜索二叉树主要有一下几个操作:建立搜索二叉树;建立空树;查找x的位置;查找最大,最小值的位置; 插入节点,删除节点;打印二叉树; (3)建立搜索二叉树,不同 阅读全文
posted @ 2018-11-30 14:35 麟阁 阅读(379) 评论(0) 推荐(0) 编辑
摘要: 思路: (1)先用堆栈将后缀表达式转化为表达式树,然后再将树进行中缀遍历,如果左右子树不为空就输出左右括号。 (2)后缀表达式转化为表达式树时要用堆栈进行: 如果是数字(字母)就入栈,如果是运算符就取堆栈的前两个节点,然后建立新的子树再将头结点入栈。 #include<iostream> #incl 阅读全文
posted @ 2018-11-30 11:47 麟阁 阅读(1588) 评论(0) 推荐(0) 编辑
摘要: 思路: (1)从头结点开始,p=L->next,然后从p开始,依次翻转p与p的前一个节点的指针的方向。 (2)提前记录p的next节点,因为指针变换后不会再指向下一个。 (3)令p的next指向p前面的节点。 (4)记录当前p指针,为下一次改变指针方向做准备。 (5)考虑头结点的情况,如果指针p的前 阅读全文
posted @ 2018-11-29 21:44 麟阁 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 思路:与队列相同,就是判断是否合法要花费时间,复杂度为O(1); 在双端队列的表头插入或者在双端队列的表尾进行删除时要注意可能越界,用循环队列的思想取余就好了。 #include<iostream> #include<cstdio> #include<cstring> #include<cstdli 阅读全文
posted @ 2018-11-29 19:18 麟阁 阅读(669) 评论(0) 推荐(0) 编辑
摘要: 1、队列的链式存储: 思路: (1)建立两个结构体,一存储数据及下一个节点的信息,另一个存储链表的表头和表尾指针。 (2)出队列时一定要注意如果只剩下最后一个节点,要提前让Q->Top=Q->Rear,因为如果tp被删除后,就不能再去调用它的next, 最后就找不到结果了。 #include<std 阅读全文
posted @ 2018-11-29 18:51 麟阁 阅读(601) 评论(0) 推荐(0) 编辑
摘要: 问题描述: 编写一个用数组实现的两个栈的例程。除非数组的每一个单元都被使用,栈例程不能有溢出声明。 思路: 用一个结构体表示两个栈,有两个头指针,一个从头开始,另一个从末尾开始。 如果两个堆栈的头指针相邻了,就说明所有空间都被占用了,即堆栈满了。 #include<iostream> #includ 阅读全文
posted @ 2018-11-28 20:44 麟阁 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 一、堆栈的链式存储 #include<stdio.h> #include<stdlib.h> #include<string.h> struct Node{ int data; struct Node* next; }; typedef struct Node* Stack; int IsEmpty 阅读全文
posted @ 2018-11-28 17:40 麟阁 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 题目要求:不同于我们已经给出的删除方法,另一种是使用懒惰删除(lazy deletion)的方法。为了删除一个元素,我们标记上该元素被删除(使用一个 附加的域)。表中被删除和非被删除作为数据结构的一部分被保留。如果删除元素和非删除元素一样多,我们遍历整个表,对所有标记点执行标准的删除 算法。 (1) 阅读全文
posted @ 2018-11-28 12:54 麟阁 阅读(251) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 17 下一页