zoukankan      html  css  js  c++  java
  • 数据结构和算法

    程序设计 = 数据结构 + 算法

    这是一个著名的公式,说明这两个方面是非常重要的。在Java中,集合实现了多种数据结构,开发者使用就可以了。但是,了解数据结构,有助于理解源码,进而可以为不同的程序选择合适的数据结构。

    一、数据结构

     数据结构是相互之间存在一种或多种特定关系的数据元素的集合。

    主要有两种结构:一是逻辑结构;二是物理结构。

    1、数组

       线性表的顺序存储结构的实现方式。

    2、链表

      链式存储结构有以下几种:单链表、静态链表、循环链表、双向链表。

    3、栈

       限定仅在表尾进行插入和删除的线性表。想象枪的子弹壳。

    4、队列

       只允许在一端进行插入操作,而在另一端进行删除的线性表。

    5、串

      比如Java中String类。KMP算法

    二、算法

     算法是解决特定问题求解步骤的描述,在计算机中为指令的有限序列,并且每条指令表示一个或多个操作。

     算法运行的两个标准:时间复杂度和空间复杂度。

    1、查找

    2、排序 

    学习书籍:

    1、大话数据结构

    2.《数据结构与算法分析--Java语言描述》

    3.《数据结构和抽象问题求解--Java语言描述》

    4.《算法导论》

  • 相关阅读:
    4.1.7 POD对象
    异常处理
    POJ3167 Cow Patterns [KMP]
    POJ1961 Period [KMP应用]
    POJ2778 DNA Sequence [AC自动机+矩阵]
    HDU2243 考研路茫茫——单词情结 [AC自动机+矩阵]
    POJ2185 Milking Grid [KMP应用]
    POJ2541 Binary Witch [状态压缩]
    ZOJ3430 Detect the Virus [AC自动机]
    POJ2752 Seek the Name, Seek the Fame [KMP]
  • 原文地址:https://www.cnblogs.com/luoa/p/10724889.html
Copyright © 2011-2022 走看看