终于到了数据结构和算法的阶段了,前段时间被校招题虐的惨惨的,毅然决定要好好学数据结构和算法了,希望和我一起参加校招的朋友们也加油啊!
数据结构在开发中是很重要的,不对应该是非常重要的,一定要好好学,如果想搞开发的话。在今后的大部分程序中,不管是一个小的系统也好,大的软件也好,都离不开我们的数据结构和算法的运用,我们完全可以说:程序=数据结构+算法。
数据结构和算法是两个概念,这是单独的两门课,在今后的博客中我会继续整理笔记,前期是数据结构的内容,后期是算法的内容,今天这篇文章,我只想先介绍一下数据结构和算法这两个概念。
数据结构
数据结构也是分两个部分,一个是数据部分,一个是结构部分:
数据:但凡能够被计算机存储、识别和计算的东西都叫数据,但是这些数据都是以二进制存储的。如:
硬盘中的:MP3、JPG、doc、AVI、EXE、TXT
内存中的:变量、常量、数组、对象、字节码
而结构则是数据与数据之间的一种或多种特定的关系。
虽然两者在概念上是独立的,但是在数据结构里面,少其一则程序的结构就是不完整的,因此 数据结构就是数据+数据之间的关系,两者的结合,组成数据结构,让我们的程序更加完整。
那么数据结构主要解决什么样的问题呢?——将零散的数据“整齐划一”,方便后续操作。如在前期阶段学习的时候,学到过数组,将一堆分散的变量,定义到数组里面,变成一堆连续的变量,方便对整体进行操作。因此,学习数据结构让我们对数据有一个比较方便的管理方式。
数据的结构也分两种:
逻辑结构:是指数据元素之间的相互关系,是我们想象出来的,并没有实质性的将其存储在计算机中
集合结构:集合结构中的数据元素除了同属于一个集合外,他们之间没有其他关系