逻辑数据结构和存储数据结构

谈论数据结构的目的是为了在计算机中实现对数据的操作。因此还需要研究如何在计算机中表示数据。
数据的逻辑结构在计算机存储设备中的映像被称为数据的存储结构。也可以说数据的存储结构是逻辑结构在计算机存储器的实现,又称物理结构。
数据的存储结构是十分依赖计算机的。常见存储结构有顺序存储结构、链式存储结构等。

总结:

逻辑数据结构:数据与数据之间的逻辑关系。

存储数据结构:通过程序语言(C语言:结构体、数组、指针)对逻辑数据结构的实现。

时间: 2024-11-13 17:14:09

逻辑数据结构和存储数据结构的相关文章

图的邻接矩阵存储数据结构--自己写数据结构

头文件graph.h #ifndef _GRAPH_H_ #define _GRAPH_H_ #define MAX_VER 100 #define ENDLESS 65535 typedef char VertexType; typedef int EdgeType; typedef struct _Graph { VertexType ver[MAX_VER]; EdgeType edge[MAX_VER][MAX_VER]; int num_ver,num_edge; }Graph,*pG

如果系统要使用超大整数(超过long长度范围),请你设计一个数据结构来存储这种超大型数字以及设计一种算法来实现超大整数加法运算

package interview_10_10; import org.junit.Test; public class T1 { /** * 如果系统要使用超大整数(超过long长度范围),请你设计一个数据结构来存储这种超大型数字以及设计一种算法来实现超大整数加法运算). */ @Test public void test1() { String number1 = "4324328732789"; String number2 = "2383244324324325898

算法数据结构02 /常用数据结构

目录 2算法数据结构02 /常用数据结构 1. 栈 2. 队列 3. 双端队列 4. 内存相关 5. 顺序表 6. 链表 7. 二叉树 2算法数据结构02 /常用数据结构 1. 栈 特性:先进后出的数据结构,有栈顶和栈尾 应用场景:每个 web 浏览器都有一个返回按钮.浏览网页时,这些网页被放置在一个栈中(实际是网页的网址).现在查看的网页在顶部,第一个查看的网页在底部.如果按'返回'按钮,将按相反的顺序浏览刚才的页面. 栈的方法: Stack():创建一个空的新栈. 它不需要参数,并返回一个空

算法数据结构01 /算法数据结构概述

目录 算法数据结构01 /算法数据结构概述 1. 算法 2. 评判程序优劣的方法 3. 时间复杂度 4. 数据结构 5. python数据结构性能分析 6. 总结 算法数据结构01 /算法数据结构概述 1. 算法 算法概述 算法是计算机处理信息的本质,因为计算机程序本质上是一个算法来告诉计算机确切的步骤来执行一个指定的任务.一般地,当算法在处理信息时,会从输入设备或数据的存储地址读取数据,把结果写入输出设备或某个存储地址供以后再调用. 算法是独立存在的一种解决问题的方法和思想. 对于算法而言,实

你真的懂了redis的数据结构吗?redis内部数据结构和外部数据结构揭秘

Redis有哪些数据结构? 字符串String.字典Hash.列表List.集合Set.有序集合SortedSet. 很多人面试时都遇到过这种场景吧? 其实除了上面的几种常见数据结构,还需要加上数据结构HyperLogLog.Geo. 可是很多人不知道redis 不仅有上面的几种数据结构,还内藏了内部的数据结构.即redis可以分为外部数据结构和内部数据结构. 1. 如何查看redis的数据结构? ####1.1 如何查看redis的外部数据结构?可以使用type命令,返回key的类型,如str

数据结构-图存储表示之邻接表

邻接表 在图论中,邻接表代表一个图中的所有边或弧. 邻接表存储表示,需要保存一个顺序存储的顶点表和每个顶点上的边的链接表. 邻接表(Adjacency List),即数组与链表相结合的存储方法. 如果是无向图,那么每条边由两个结点组成,分别代表边的两个端点: 如果是有向图,那么每条边是一个结点对,分别代表边的始点和终点. 一般来说,邻接表是无向的. 在计算机科学中,邻接表描述一种紧密相关的数据结构,用于表征图.在邻接表的表示中,对于图中的每个顶点,我们将保存所有其它与之相连的顶点(即"邻接表&q

数据结构线性存储之连续存储数组的实现

归纳: 线性 连续存储[数组] 优点:存取速度快(元素可以直接定位到) 缺点:插入删除元素慢(因为要移动其他元素),空间通常有限制 离散存储[链表] 优点:空间没有限制,插入删除元素很快 缺点:存取速度很慢(要一个一个遍历,一个一个找) 线性结构的应用: 1. 栈 2. 队列 非线性 树 图 #include <stdio.h> #include <malloc.h> #include <stdlib.h> #define bool int #define false

SQL Server 索引(一)数据结构和存储结构

本文关注以下方面(本文所有的讨论基于SQL Server数据库): 索引的分类: 索引的结构: 索引的存储 一.索引定义分类 让我们先来回答几个问题: 什么是索引? 索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息. 举个例子,索引就像我们查字典时用的按拼音或笔画或偏旁部首 有哪些索引? 从物理结构上可分为两种:聚集索引和非聚集索引 (此外还有空间索引.筛选索引.XML索引) 索引说明 (http://msdn.microsoft.com/zh-cn/l

郝斌数据结构连续存储数组的算法演示

#include<stdio.h> #include<stdbool.h> #include<stdlib.h> //包含了exit函数 //定义了一个数据类型 struct Arr { int * pBase;//存储的是数组第一个元素的地址 int len;//数组所能容纳 的最大元素的个数 int cnt;//当前数组有效元素的个数 }; void init_arr(struct Arr *, int); bool append_arr(struct Arr *