平衡二叉树 AVL AVL 树是一棵空树或它的左右两个子树的高度差的绝对值不超过 1,并且左右两个子树都是一棵平衡二叉树。同时,AVL 树也是一棵二叉搜索树。 (a)普通二叉搜索树 (b)平衡二叉树 AVL 树可以在 O(logN) 时间复杂度内执行所有搜索、插入和删除操作。 代码实现 /** * 平衡二叉树 */ public class AVLTree<K extends Comparable<K>, V> { private class Node { public K key; pub…

2018年10月18日 0条评论 7点热度 阅读全文

循环队列 循环队列是将顺序队列变为一个变成一个环状的空间。头尾指针以及队列元素之间的关系不变,只是在循环队列中,头尾指针“依环状增 1”的操作可用”模“运算来实现。通过取模运算,头指针和尾指针就可以在顺序表空间内以头尾衔接的方式循环移动。 队空条件:Q.front == Q.rear 队满条件:(Q.rear + 1)% MAXQSIZE == Q.rear(少用一个元素空间,即队列空间为m时,有m-1个元素就认为是队满)。 循环队列(顺序表实现) #include <bits/stdc++.h> #d…

2018年10月9日 0条评论 2点热度 阅读全文

C++实现图的构建和遍历操作: 1:图的定义 2:图的初始化 3:BFS遍历 4:DFS遍历 graph.h #ifndef DS_GRAPH_GRAPH_H #define DS_GRAPH_GRAPH_H #include <iostream> using std::cin; using std::cout; using std::endl; #define E 4 //图的边数 #define N 4//图的顶点数 typedef char vextype; //顶点的数据类型 typedef f…

2017年5月29日 0条评论 6点热度 阅读全文

基本思想 1、从图中某个顶点V0出发,并访问此顶点; 2、从V0出发,访问V0的各个未曾访问的邻接点W1,W2,…,Wk;然后,依次从W1,W2,…,Wk出发访问各自未被访问的邻接点; 3、重复步骤2,直到全部顶点都被访问为止。 类似于树的按层次遍历,也就是一层一层地遍历,图的广度优先遍历从图中的某个结点出发,访问它的邻结点再访问邻结点的邻结点,由近及远。 如上图:从A出发,依次访问A结点的邻接点B、C、D,再访问B的邻接E,再访问C的邻接点F,左边访问完后,访问右边D的邻结点G和H,再访问G的邻接点 I, 至此所…

2016年12月20日 0条评论 6点热度 阅读全文

整合自: http://blog.csdn.net/shuangde800/article/details/7341289 http://www.cnblogs.com/Jezze/archive/2011/12/23/2299884.html http://blog.csdn.net/jdhanhua/article/details/6621026 B树介绍:点击打开链接 tire树:点击打开链接    点击打开链接          …

2016年7月24日 0条评论 7点热度 阅读全文

  现在项目中有需求比较两个字符串数组,找出其中不同的部分,并保存到本地txt。实现方式每个人都有自己的思路,这里提供一种通过归并排序实现的方式供大家参考。   基本思路是数组A和数组B对比,使用数组a来保存数组A中比数组B中多的元素(即在A中存在,B中不存在的元素),b来保存数据B中比数组A中多的元素(即B中存在,A中不存在的元素)。开始需要分别调用Sort()函数对A、B数组进行排序,然后使用CompareTo从两个数组中第一个数组进行比较,当A.0(A中第一个元素)>B.0时A.Co…

2015年12月28日 0条评论 7点热度 阅读全文

图的遍历操作 一、     实验目的: 该程序主要完成对图的创建,并实现图的深度优先遍历和广度优先遍历                                &n…

2014年9月21日 0条评论 7点热度 阅读全文

    上篇着重讨论了二叉排序树的一些性质,它其实是一种排序结构,按照中序遍历得到的是一种按照顺序排列好的线性结构。接下来将会着重讨论哈弗曼树。   一、满二叉树和完全二叉树       什么是满二叉树呢?抛开它的概念不说,从它的字面意思上也可以看出满二叉树是一种丰满的二叉树,它要求除叶子结点外的结点都包括左孩子和右孩子。如下图:          那完全二叉树是什么…

2013年10月14日 0条评论 6点热度 阅读全文

题目链接:Click here~~ 题意: 在三维空间内,有n个长方体,棱都与坐标轴平行。给出一些关系,问是否可能,若可能,输出其中的一种。 关系有两种: 1、某两个长方体相交。 2、某个长方体的所有点的某一维的坐标完全小于另一个长方体的任意一点。 解题思路: 首先,对于棱与坐标轴平行的长方体,在某一维中,它里面的点可以看做包含在长方体的两个平面内,且点的坐标正好在两个平面的坐标的区间内。 而题目让我们所求的,正是坐标区间,于是我们可以求平面的坐标来得到。 然后,考虑相交的情况,我们可以得出:若某两个长方体相交,当…

2012年10月4日 0条评论 7点热度 阅读全文