#数组 数组的基本概念 从逻辑结构上看,一维数组A是n(n>1)个相同类型数据 元素a1、a2、…、an构成的有限序列,其逻辑表示为:A=(a1,a2,…,an)其中,ai(1≤i≤n)表示数组A的第i个元素。 ####数组的存储结构 将数组的所有元素存储在一块地址连续的内存单元中,这是一种顺序存储 ...
分类:
编程语言 时间:
2020-05-29 20:56:40
阅读次数:
59
一、栈的基本概念:只允许在一端进行插入或者删除操作的线性表 <后进先出> 栈顺序存储结构: 共享栈:将两个栈底设置在共享空间的两端,栈顶向空间中间延伸 判空:0号栈 top == -1 1号栈 top == MaxSize 栈满:top1 - top0 == 1 优点:存取时间复杂度仍未O(1),但 ...
分类:
其他好文 时间:
2020-05-29 12:04:35
阅读次数:
66
线性结构与切片 线性结构 列表、元组、字符串、bytes, bytearray 共同点:都是顺序存储, 顺序访问的, 都是可迭代对象, 都可以通过索引访问 线性结构特征 可迭代 len获取长度 可以使用下标操作符通过索引访问 可以切片 例如:可迭代的表现形式 In [1]: for i in [1, ...
分类:
其他好文 时间:
2020-05-28 23:49:04
阅读次数:
69
顺序栈 顺序栈定义 用顺序存储结构实现的栈,即利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素,同时 由于栈的操作的特殊性,还必须附设一个栈顶指针(top)来动态的指示栈顶元素在顺序栈中的位置。 通常以 top= -1 表示栈空。 结构体定义 struct SeqStack{ int MAX ...
分类:
其他好文 时间:
2020-05-28 21:55:28
阅读次数:
76
偷个懒,整合一下书上代码就得到了 顺序存储: 1 #include<iostream> 2 #include<cstdlib> 3 #define MaxSize 30 4 5 using namespace std; 6 7 struct SqStack { 8 int data[MaxSize] ...
分类:
其他好文 时间:
2020-05-25 17:29:31
阅读次数:
101
【1】树的结构特点 非线性结构,有一个直接前驱,但可能有多个直接后继; 树的定义具有递归性,树中还有树; 树可以为空,即节点个数为0; 通过左孩子右兄弟表示法能够将一个非二叉树转化为二叉树。 【2】树的存储 顺序存储 链式存储 ...
分类:
其他好文 时间:
2020-05-23 11:22:50
阅读次数:
47
1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <ctype.h> 4 #include <string.h> 5 typedef int ElemType; 6 typedef struct stack{ 7 ElemType *item ...
分类:
编程语言 时间:
2020-05-22 12:50:08
阅读次数:
41
小编最近学习数据结构,附上有关代码: 线性表存储:1 顺序存储, 2 链式存储 一元多项式的相加:链式相加 #include<iostream> #define MAX_SIZE 100 const int ERROR = -1; const int OK = -1; typedef int Sta ...
分类:
其他好文 时间:
2020-05-22 09:31:25
阅读次数:
61
2. 数据元素之间的关系在计算机中有几种表示方法?各有什么特点? 四种表示方法 (1)顺序存储方式。数据元素顺序存放,每个存储结点只含一个元素。存储位置反映数据元素间的逻辑关系。存储密度大,但有些操作(如插入、删除)效率较差。 (2)链式存储方式。每个存储结点除包含数据元素信息外还包含一组(至少一个 ...
分类:
其他好文 时间:
2020-05-22 09:24:15
阅读次数:
316
循环队列结构定义 1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<string.h> 4 #define SIZE 10 5 #define OK 1 6 #define False -1 7 //循环队列结构定义 8 typedef stru ...
分类:
其他好文 时间:
2020-05-16 21:01:04
阅读次数:
73