数据结构定义

内容来自《大话数据结构》

数据:描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机的符号集合。

数据元素:是组成数据的,有一定意义的基本单位,在计算机中通常作为整体处理,也被称为记录。

数据项:一个数据元素可以有若干个数据项组成,数据项是数据不可分割的最小单位。

数据对象:是性质相同的数据元素的集合,是数据的子集。  性质相同:(拥有相同数量和类型的数据项)

数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。

逻辑结构:指数据对象中数据元素之间的相互关系。

  集合结构:集合中的数据元素除了同属于一个集合外,它们之间没有任何其他的关系。

  线性结构:线性结构中的数据元素是一对一的关系。

  树形结构:树形结构中的数据元素存在一对多的层次关系。

  图形结构:图形结构中的数据元素是多对多的关系。

物理结构(存储结构):字数据的逻辑结构在计算机中的存储形式。

数据元素的存储结构形式有两种:顺序存储、链式存储

时间: 2024-10-06 09:40:24

数据结构定义的相关文章

GO语言的进阶之路-Golang高级数据结构定义

GO语言的进阶之路-Golang高级数据结构定义 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们之前学习过Golang的基本数据类型,字符串和byte,以及rune也有所了解,但是说起高级点的数据类型,可能我们还是不太清楚,那么今天就跟着我脚步一起学习一下这些高级数据类型数据吧.相信有部分人可能学习过Python,那么我这篇博客基本上不用看了,因为对你来说会觉得so easy.因为太多的相似之处了,只是写法不同.本章主要介绍数组(array),切片(scice),字典(m

block的内存分析,循环引用,变量访问,数据结构定义

一.block的内存分析 如上图: 定义了一个weak的block,那么它在内存中的表现形式如右下角, 1.没有对block进行copy操作,而是weak,block就存储在栈空间中. 2.如果block存储于栈空间,不会对block内部所用到的对象产生强引用. 如上图: 对block进行了一次copy操作,如果对block进行copy操作,block就会存储到堆空间当中. 1.如果block存储于堆空间,就会对block内部所用到的对象产生强引用. 2.如下图所示,就会产生循环引用,造成P对象

从string.size()和string.length()聊到长度的问题和一个关于数据结构定义的技巧

最近工作中要查看一下string的长度,然后忘了是哪个函数,所以去网上搜了一搜,决定把网上学的和其他的一些有关长度的东西在这里汇总一下, 然后就有了此帖. string 是从c语言的char数组的概念发展出来的.但是char指针变量仍然和string的变量不是一个东西,虽然他们都可能是跟字符串打交道. 看下面的例子: char a[4] = "ab"; char c[] = "ab"; string b = "ab"; ----->  b[

数据结构中线性表的基本操作-合并两个线性表-依照元素升序排列

#include<iostream> #include<stdlib.h> #define LIST_INIT_SIZE 10/*线性表初始长度*/ #define LIST_CREATENT 2/*每次的增量*/ typedef int ElemType; using namespace std; typedef struct SqList/*线性表的数据结构定义*/ { ElemType *elem;/*线性表基址*/ int length;/*当前线性表所含的元素个数*/ i

第一章 数据结构概论

1.1  什么是数据结构 在数据结构中数据之间的关系主要有两种:线性关系和非线性关系(非线性关系又分为树形关系和图形关系). 如上图:每个数据单位(一条学生记录)相邻的前一个数据单位最多只能有一个(第一个没有),相邻的后一个数据单位最多只能有一个(最后一条没有).这种数据单位的集合成为数据集合,这种数据之间的关系成为线性关系(这种数据文件就是一个线性表). 我们的电脑硬盘中的目录文件结构,是一个树形结构(树形关系),这种即是非线性的: 多台电脑之间互相通信的多对多的关系,属于非线性关系中的图关系

数据结构与算法80道

1. 把二元查找树转变成排序的双向链表 题目: 输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表. 要求不能创建任何新的结点,只调整指针的指向. 10 / \ 6 14 / \ / \ 4 8 12 16 转换成双向链表 4=6=8=10=12=14=16. 首先我们定义的二元查找树 节点的数据结构如下: struct BSTreeNode { int m_nValue; // value of node BSTreeNode *m_pLeft; // left child of no

数据结构基本概念及算法和算法分析 -- 引自《新编数据结构习题与解析》(李春葆等著)

本文引自<新编数据结构习题与解析>(李春葆等著)第1章. 1. 数据结构的基本概念 1.1 数据 数据是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称.例如,整数.实数和字符串都是数据. 1.2 数据元素 数据元素也称为节点,是表示数据的基本单元,在计算机程序中通常作为一个整体进行考虑和处理. 1.3 数据项 数据项是数据的最小单位.数据元素可以由若干个数据项组成.例如,学生记录就是一个数据元素,它由学号.姓名.性别等数据项组成. 1.4 数据对象

数据结构_线性表的顺序表示和链式表示

/********************************************************************************************************************/ 声明: (1)*.h文件是代码声明, *.cpp文件是代码实现; (2)一般头文件的内容有: ①类型声明; ②函数声明; ③枚举; ④常量; ⑤宏 (3)以下说明是为了方便代码文件的管理而设定的一些规则, 以后代码都会按照此规则编写: 1)Pubuse.h 是几

数据结构绪论

一.数据结构定义介绍 1.数据结构:相互之间存在一种或多种特定关系的数据元素的集合. 2.数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科. 程序设计 = 数据结构 + 算法 二.基本概念和术语 1.数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合. 注:声音.视频.图像等也是数据,可以通过编码输入到计算机中. 2.数据元素:是数据的基本单位,在计算机程序中通常作为整体进行处理.也被成为记录. 3