1、线性表 概念::零个或多个数据元素的有序序列。 描述:2、线性表的抽象数据类型: ADT线性表 Data:线性表的数据对象集合为{a1,a2,...,an},每个元素的类型均为DataType。其中除第一个元素a1外,每一个元素有且只有一个直接前驱元素,除了最后一个元素an外,每一个元素...
异或链表(Xor Linked List)也是一种链式存储结构,它可以降低空间复杂度达到和双向链表一样目的,任何一个节点可以方便的访问它的前驱节点和后继结点。可以参阅wiki 普通的双向链表 class Node {
public: int data; Node *prev; Node *next;...
分类:
其他好文 时间:
2014-11-19 20:24:07
阅读次数:
511
代码写过可能就会忘了,但是如果思路还在的话,我们就能够顺着思路去写代码,所以此处侧重于对思路的总结;此处,我主要作为搬运工然后再加入自己的一些理解。1:题目描述:给定链表的头指针和一个节点指针,在O(1)时间删除该节点。[Google面试题]思路: 要删除链表节点我们一般要找到的节点的前驱节点:.....
分类:
编程语言 时间:
2014-11-17 21:04:01
阅读次数:
174
题目:输出n!中素数因数的个数。
分析:数论。这里使用欧拉筛法计算素数,在计算过程中求解即可。
传统筛法是利用每个素数,筛掉自己的整数倍;
欧拉筛法是利用当前计算出的所有素数,乘以当前数字筛数;
所以每个前驱的素椅子个数一定比当前数的素因子个数少一个。
说明:又一次用了“线性筛法”。
#include
#incl...
分类:
其他好文 时间:
2014-11-17 14:04:17
阅读次数:
138
权值分块和权值线段树的思想一致,离散化之后可以代替平衡树的部分功能。部分操作的时间复杂度:插入删除全局排名全局K大前驱后继全局最值O(1)O(1)O(sqrt(n))O(sqrt(n))O(sqrt(n))O(sqrt(n))O(sqrt(n))当然,因为要离散化,所以只能离线。代码很短,很快,比我...
分类:
其他好文 时间:
2014-11-14 17:15:30
阅读次数:
243
一、线性表的定义1、线性结构的特点在数据元素的非空有限集中,(1)存在唯一的一个被称作“第一个”的数据元素;(2)存在惟一的一个被称作“最后一个”的数据元素;(3)除第一个之外,集合中的每个数据元素均只有一个前驱;(4)出最后一个之外,集合中每个数据元素均只有一个后继。2、线性表一个线性表n个数据元...
分类:
其他好文 时间:
2014-11-13 00:14:20
阅读次数:
352
一)MD——建立子目录 1.功能:创建新的子目录 2.类型:内部命令 3.格式:MD[盘符:][路径名]〈子目录名〉 4.使用说明: (1)“盘符”:指定要建立子目录的磁盘驱动器字母,若省略,则为当前驱动器; (2)“路径名”:要建立的子目录的上级目录名,若缺省则建在当前目录下。 例:(1)在C盘....
分类:
其他好文 时间:
2014-11-11 14:01:59
阅读次数:
214
题意:给你5*5的矩阵,要求你从左上角(0,0)走到右下角(4,4)的最短路径。题解:用对路径用bf,我们记住没个点的前驱,输出用dfs 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #includ...
分类:
其他好文 时间:
2014-11-10 17:41:01
阅读次数:
152
树(Tree)是n(n>=0)个相同类型的数据元素的有限集合。树中的数据元素叫结点(Node)。n=0的树称为空树(Empty Tree);对于n>0的任意非空树T有:
1.有且只有一个特殊的结点称为树的根(Root)结点,根没有前驱结点。
2.若n>1,则除根结点外,其余结点被分成了m(m>0)个互不相交的集合T1,T2,T3,...Tm,其中每个集合Ti(1
由树的定义可知,...
摘要: 本章介绍了二叉查找树的概念及操作。主要内容包括二叉查找树的性质,如何在二叉查找树中查找最大值、最小值和给定的值,如何找出某一个元素的前驱和后继,如何在二叉查找树中进行插入和删除操作。在二叉查找树上执行这些基本操作的时间与树的高度成正比,一棵随机构造的二叉查找树的期望高度为O(lgn),从而....
分类:
其他好文 时间:
2014-11-04 22:32:57
阅读次数:
353