上一篇 树和二叉树的概念和定义:https://www.cnblogs.com/prinzeugen/p/12805870.html 二叉树的存储结构 二叉树的顺序存储结构 二叉树的顺序结构就是将所有的结点按照一定的次序,顺序存储在一维数组当中,并且结点的存储位置,也就是数组的下标要能够体现出节点之 ...
分类:
编程语言 时间:
2020-05-15 00:29:07
阅读次数:
76
算法简介 二分查找 二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。 首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将 ...
分类:
编程语言 时间:
2020-05-11 23:43:48
阅读次数:
96
一、本章内容小结 本章主要学习了串、数组和广义表。 1.串 定义: 串是内容受限的线性表,限定表中元素为字符。 串的两种存储结构: 顺序存储结构、链式存储结构。 串的模式匹配: 有两种常见算法: (1)BF算法,暴力依次比较法,时间复杂度为O(m*n)。 (2)KMP算法,找出当前匹配串中头尾最长的 ...
分类:
其他好文 时间:
2020-05-05 18:17:44
阅读次数:
73
一、本章学习小结:第四章主要学习了串、数组和广义表,与以前学习的区别在于,本章将它们视为线性表。 1)串是内容受限的线性表,考虑到存储效率和算法方便性,一般采用顺序存储结构;考虑到串变量相差较大,可采用动态分配的方法;为了便于操作,可增设尾指针。 串的主要应用场景是模式匹配,其中有BF算法和KMP算 ...
分类:
其他好文 时间:
2020-05-04 12:59:26
阅读次数:
68
栈 定义:栈是一个先进后出的线性表,要求只在表尾进行删除和插入操作 注:对于栈来说,表尾成为栈的栈顶(top),相应的表头称为栈低(bottom)。 因为栈的本质是线性表,所以栈也分为顺序存储结构和链式存储结构;(一般用顺序存储实现) 栈的顺序存储: 1 #include <stdio.h> 2 # ...
分类:
其他好文 时间:
2020-05-04 01:08:58
阅读次数:
75
顺序存储结构 定义:一段地址连续的储存单元依次存储的数据元素。 实际上就是把数组封装进结构体,增加一个记录当前长度的变量。 时间复杂度:存储,查看,时间复杂度为 O(1) 删除,插入,时间复杂度为 O(n) 优点:无需为表示表中元素之间的逻辑关系而添加额外的存储空间 可以快速的存,取表中的任意位置的 ...
分类:
其他好文 时间:
2020-05-02 16:35:47
阅读次数:
60
一、栈 二、队列 一、栈 1.概念 2. 3.栈的顺序存储结构——进栈操作 4.栈的顺序存储结构——出栈操作 5.栈的链式存储结构——进栈操作 6.栈的链式存储结构——出栈操作 二、队列 1.概念 2.循环队列 3.队列的链式存储结构——入队操作 4.队列的链式存储结构——出队操作 ...
分类:
其他好文 时间:
2020-05-01 20:15:06
阅读次数:
52
目录 内容 一:数据结构 1:数据逻辑结构 1.1: 集合 1.2: 线性结构:队列,栈,数组,字符串,一对一的关系 1.3: 树形结构:一对多的关系。 1.4: 图形结构:多对多的关系。 2:物理存储结构 2.1:顺序存储结构 2.2:链式存储结构 注意 结论 ...
分类:
编程语言 时间:
2020-05-01 15:01:25
阅读次数:
70
线性表的顺序存储是用一组地址连续的存储单元依次存储线性表的数据元素。假设线性表的每个数据元素需占用K个存储单元,并以元素所占的第一个存储单元的地址作为数据元素的存储地址。则线性表中序号为i的数据元素的存储地址LOC(a i )与序号为i+1 的数据元素的存储地址LOC(a i+1 )之间的关系为LO ...
分类:
其他好文 时间:
2020-04-25 15:32:20
阅读次数:
61
讲了线性表的存储结构,分别讲了顺序存储结构(数组)和链式存储结构 第一次操作链表,对链表的初始化和操作还有很多不熟悉的地方,而且还要根据实际问题考虑链表和顺序表哪种结构更好 最近很少看课本,应该多看课本,多回顾自己打的代码,才能加深印象。 小组讨论得还是挺开心得,毕竟终于不是自己一个人打代码了。和组 ...
分类:
其他好文 时间:
2020-04-13 00:31:47
阅读次数:
64