网站建设工作台账,免费门户网站建设,塘厦东莞网站建设,水果行业为什么做网站1. 算法与数据结构总览图 2.常用的数据结构
2.1.数组#xff08;Array#xff09; 数组是一种聚合数据类型#xff0c;它是将具有相同类型的若干变量有序地组织在一起的集合。数组可以说是最基本的数据结构#xff0c;在各种编程语言中都有对应。一个数组可以分解为多个数…1. 算法与数据结构总览图 2.常用的数据结构
2.1.数组Array 数组是一种聚合数据类型它是将具有相同类型的若干变量有序地组织在一起的集合。数组可以说是最基本的数据结构在各种编程语言中都有对应。一个数组可以分解为多个数组元素按照数据元素的类型数组可以分为整型数组、字符型数组、浮点型数组、指针数组和结构数组等。数组还可以有一维、二维以及多维等表现形式。
2.2.栈Stack 栈是一种特殊的线性表它只能在一个表的一个固定端进行数据结点的插入和删除操作。栈按照先进后出或后进先出的原则来存储数据也就是说先插入的数据将被压入栈底最后插入的数据在栈顶读出数据时从栈顶开始逐个读出。栈在汇编语言程序中经常用于重要数据的现场保护。栈中没有数据时称为空栈。
2.3.队列Queue 队列和栈类似也是一种特殊的线性表。和栈不同的是队列只允许在表的一端进行插入操作而在另一端进行删除操作即先进先出。一般来说进行插入操作的一端称为队尾进行删除操作的一端称为队头。队列中没有元素时称为空队列。
2.4.链表Linked List 链表是一种数据元素按照链式存储结构进行存储的数据结构这种存储结构具有在物理上存在非连续的特点。链表由一系列数据结点构成每个数据结点包括数据域和指针域两部分。其中指针域保存了数据结构中下一个元素存放的地址。链表结构中数据元素的逻辑顺序是通过链表中的指针链接次序来实现的。
2.5.树Tree 树是典型的非线性结构它是包括2个结点的有穷集合K。在树结构中有且仅有一个根结点该结点没有前驱结点。在树结构中的其他结点都有且仅有一个前驱结点而且可以有两个后继结点m≥0。
2.6.图Graph 图是另一种非线性数据结构。在图结构中数据结点一般称为顶点而边是顶点的有序偶对。如果两个顶点之间存在一条边那么就表示这两个顶点具有相邻关系。
2.7.堆Heap 堆是一种特殊的树形数据结构一般讨论的堆都是二叉堆。堆的特点是根结点的值是所有结点中最小的或者最大的并且根结点的两个子树也是一个堆结构。
2.8.散列表Hash 散列表源自于散列函数(Hash function)其思想是如果在结构中存在关键字和T相等的记录那么必定在F(T)的存储位置可以找到该记录这样就可以不用进行比较操作而直接取得所查记录。
3.常用的算法 常用算法有递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法等。