博客专栏  >  编程语言   >  数据结构

数据结构

经过几天的学习和对知识的整理,终于对数据结构有了一点的了解和掌握,并整理出来博客,建立专栏。

关注
7 已关注
33篇博文
  • 再谈算法复杂度

    在面试题中总是出现fork()这个函数,总是很疑惑是干什么用的上网找到了一些资料分享学习一下 一、fork学习      一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一...

    2015-08-11 17:21
    848
  • 算法复杂度解析

    摘要       本文论述了在算法分析领域一个重要问题——时间复杂度分析的基础内容。本文将首先明确时间复杂度的意义,而后以形式化方式论述其在数学上的定义及相关推导。从而帮助大家从本质上认清这个概念。 ...

    2015-08-11 16:26
    1384
  • 数据结构(29)图的遍历

    图的遍历,首先说下定义:                而在这里,就给大家叙述下深度优先遍历。本来是要用自己的话来给大家讲解的,但是搜了下网上的定义,觉得还是网上的定义更可靠和严谨...

    2015-08-11 15:13
    756
  • 数据结构(27)二叉树的操作

    今天来介绍下二叉树的4种遍历方式,如果对二叉树不熟悉的话,请先去本系列二叉树的介绍中先学习。   遍历:单链表的遍历是指从第一个结点开始(下标为0的结点),按照某种次序依次访问每一个结点。...

    2015-08-11 15:06
    684
  • 数据结构(26)二叉树

    既然树已经熟悉了,那我们就来学习学习二叉树吧,二叉树是由n(n>=0)个结点组成的有限集合,该集合或者为空,或者是由一个根结点加上两棵分别称为左子树和右子树的﹑互不相交的二叉树组成。  ...

    2015-08-11 15:04
    707
  • 数据结构(25)树

    今天来看大家介绍树,树是一种非线性的数据结构,树是由n个结点组成的有限集合,如果n=0,称为空树;如果n>0,则:有一个特定的称之为根的结点,它只有直接后继,但没有直接前驱;除根以外的其他结点划分为m...

    2015-08-11 15:02
    697
  • 数据结构(24)队列--两个栈实现

    单纯的用线性表或者单链表实现队列已经不足为奇,现在给大家介绍个有特色的,用两个栈实现队列。  如图     这里介绍队列的常用操作: l 创...

    2015-08-11 14:59
    616
  • 数据结构(23)队列--单链表实现

    这里介绍下用单链表实现的队列,不包含队头队尾指针。  如图 这里介绍双向链表的常用操作: l 创建队列 l 销毁队列 l 清空...

    2015-08-11 14:58
    604
  • 数据结构(22)循环队列--线性表实现

    为充分利用内存空间,克服"假溢出"现象的方法是:将内存空间想象为一个首尾相接的圆环。存储在其中的队列称为循环队列。        如图 这里...

    2015-08-11 14:55
    616
  • 数据结构(21)队列--线性表实现

    队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的...

    2015-08-11 14:53
    666
  • 数据结构(20)栈--单链表实现

    栈的定义:栈是一种特殊的表这种表只在表头进行插入和删除操作。因此,表头对于栈来说具有特殊的意义,称为栈顶。相应地,表尾称为栈底。不含任何元素的栈称为空栈。          而本次给大家介绍用线...

    2015-08-11 14:52
    629
  • 数据结构(19)栈的线性实现

    栈的定义:栈是一种特殊的表这种表只在表头进行插入和删除操作。因此,表头对于栈来说具有特殊的意义,称为栈顶。相应地,表尾称为栈底。不含任何元素的栈称为空栈。          而本次给大家介绍用线...

    2015-08-11 14:50
    593
  • 数据结构(18)双向循环链表

    双向循环链表,也就是在双向链表的基础上加上循环链表的特性,使其首尾相连。最后的next指针指向首元素,而首元素的pre指针指向尾元素。                 如图    ...

    2015-08-11 14:49
    582
  • 数据结构(17)双向链表

    双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。而之前的单链表为单向链表,...

    2015-08-11 14:48
    607
  • 数据结构(16)循环链表

    今天记录下循环链表,其实循环链表也就是将单链表中最后一个数据元素的next指针指向第一个元素。         这里有一个概念需要说明下:                 游标:在循环链表中可...

    2015-08-11 14:46
    623
  • 数据结构(15)静态链表

    用数组描述的链表,即称为静态链表,它的表现形式即为结构体数组,结构体变量包括数据域data和指针域next。这种存储结构,仍需要预先分配一个较大的空间,但在作为线性表的插入和删除操作时不需移动元素,仅...

    2015-08-10 19:46
    622
  • 数据结构(14)单链表

    用一组地址任意的存储单元存放线性表中的数据元素,以元素(数据元素的映象) + 指针(指示后继元素存储位置)= 结点(表示数据元素 或 数据元素的映象),以“结点的序列”表示线性表称作线性链表(单链表)...

    2015-08-10 19:45
    570
  • 数据结构(13)线性表

    线性表是最基本、最简单、也是最常用的一种数据结构。线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的。线性表的逻辑结构简单,便于实现和操作。因此,...

    2015-08-10 19:41
    683
  • 标准模板库(STL)使用入门(下)

    利用 map 创建 vector 正如你所知,map实际上包含的是元素对。因此你可以这样写: 1 2 3 4 map M; ...

    2015-08-10 19:34
    1102
  • 标准模板库(STL)使用入门(上)

    或许你已经把 C++ 作为主要的编程语言用来解决 TopCoder 上的问题。这意味着你已经简单使用过了 STL,因为数组和字符串都是作为 STL 对象传递给函数。也许你已经注意到了,很多程序员写代码...

    2015-08-10 19:33
    1163
img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部