数据结构与算法之概述

为什么要学习数据结构和算法?有的兄弟会说面试官经常问这部分知识,确实如此,没有基础连门没有都,那么学习数据结构与算法,是为了打牢底层基础,方便日后开发过程中更好的理解项目,通过数据结构和算法这个系列的文章,希望对大家的学习有更好的理解,下面我们开始学习吧!!!!

为什么数据结构和算法要合并在一起,而不单独分开,单独学习数据结构又是枯燥乏味的,而算法是建立在数据结构的基础上的,那么下面我们来简单介绍一下;

1、数据结构概述:什么是数据结构呢?简单的说其实就是数据与数据之间的关系;在这里我们主要讨论数据的存储结构、逻辑结构这两部分,数据的存储结构讨论数据在内存中的存储情况,逻辑结构的话是讨论数据与数据之间的关系;

数据的存储结构又分为三种:顺序存储结构、链式存储结构;顺序存储可以简单理解在食堂打饭人们需要排队,后面来的人依次往后面排;通常我们去银行办业务都需要取号,工作人员通过叫号的方式去锁定那个人,它的顺序是打乱的,通过取得好去找对应的人。

数据的逻辑结构又分为四种:集合、线性、树形、图形结构;集合结构就是把一堆数据放到一个容器中,他没之间是没有关系的;线性结构是指数据之间是一对一的关系,前后有联系;树形结构是一对多的关系,典型的例子-二叉树;图形结构是多对多的关系;下面我用图来给大家看更容易懂;

数据结构与算法之概述

算法概述:算法就是用来解决一个问题的思路,它有五个特性:输入、输出、有穷性、确定性、可行性;

以上是对数据结构和算法的基本介绍,看下面图,我们系统的对他进行学习,从数据结构到算法进一步地深挖,以下是整个学习的一个大纲。

数据结构与算法之概述