数据结构与算法01概述
程序员文章站
2024-03-16 14:39:10
...
1.几个经典问题
字符串匹配问题
汉诺塔游戏
八皇后问题
马踏棋盘算法介绍和游戏演示
2.数据结构和算法的关系
- 数据data结构(structure)是一门
研究组织数据方式的学科
,有了编程语言也就有了数据结构.学好数据结构可以 编写出更加漂亮,更加有效率的代码。 - 要学习好数据结构就要多多考虑如何将生活中遇到的问题,用
程序
去实现解决. - 程序=
数据结构+算法
- 数据结构是算法的基础, 换言之,想要学好算法,需要把
数据结构
学到位。
3 数据的存储结构
顺序存储结构:是把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。数组就是顺序存储结构的典型代表(排队)【a0 a1 a2 .....】
链式存储结构:是把数据元素存放在内存中的任意存储单元里,也就是可以把数据存放在内存的各个位置。这些数据在内存中的地址可以是连续的,也可以是不连续的。(银行办理业务)
顺序存储结构和链式存储结构的区别:
和顺序存储结构不同的是,链式存储结构的数据元素之间是通过指针来连接的,我们可以通使用指针来找到某个数据元素的位置,然后对这个数据元素进行一些操作。
4.数据的逻辑结构
逻辑关系是指数据元素之间的前后关系,而与他们在计算机中的存储位置无关。逻辑结构分为以下四类:
1.集合结构
集合结构中的数据元素同属于一个集合,他们之间是并列的关系,除此之外没有其他关系。
2.线性结构
线性结构中的元素存在一对一的相互关系。
3.树形结构
树形结构中的元素存在一对多的相互关系。
4.图形结构
图形结构中的元素存在多对多的相互关系。
线性结构常见的有:数组、队列、链表和栈
非线性结构包括:二维数组,多维数组,广义表,树结构,图结构
上一篇: 01.算法总结
下一篇: 数据结构和算法01-序列赋值