【数据结构与算法】不就是数据结构

这篇具有很好参考价值的文章主要介绍了【数据结构与算法】不就是数据结构。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

  嗨喽小伙伴们你们好呀,好久不见了,我已经好久没更新博文了!之前因为实习没有时间去写博文,现在已经回归校园了。我看了本学期的课程中有数据结构这门课程(这么课程特别重要),因为之前学过一点,所以就想着深入学习一下子。毕竟这门课程对于考研就业都有着不小得作用。如果博客写的有问题,感谢指正。话不多说,我们开始学习吧!

【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法


目录

前言

目录

一、与数据结构相关的专业名词

1.1 数据

1.2 数据元素

 1.3 数据项

1.4 数据对象

二、 数据结构

2.1 数据结构的概念

2.2 数据结构的分类 

2.2.1 物理结构

2.2.1.1 集合结构

2.2.1.2 线性结构

2.2.1.2 树形结构

​编辑

2.2.1.2 图形结构

​编辑

2.2.2 物理结构

2.2.2.2 顺序结构

2.2.2.3 链式结构

总结


一、与数据结构相关的专业名词

1.1 数据

   描述客观事物的符号 ,是能直接输入到计算机中,并被计算机识别、 加工处理和存储的对象。
   数据既可以是数值型的数据,也可以是非数字型的数据如:图像、声音、视频等。

1.2 数据元素

数据元素是数据结构中 基本的独立单元 ,也被称为元素、结点、记录等。

【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法 1 李白 23 老板 20000000 0100-01-01 可以看做一个数据元素。

 1.3 数据项

数据项是数据具有独立含义的 最小标识单位 ,也被称为字段或域。

一个数据元素由多个数据项组成。 如:" 1 李白 23 老板 20000000 0100-01-01"这个数据元素由

"1、李白 、23、老板、20000000、0100-01-01"这几个数据项组成。

1.4 数据对象

  数据对象:是性质相同的数据元素的集合,是数据的子集。
  性质相同指的是:数据元素具有 相同数量和类型的数据项 。如上图 的信息表就是一个数据对象,它的数据由id、name、age、job、salary、entrydate、mangagerid、dept_id组成。
  在不产生混淆的情况下,简称数据对象为数据。

二、 数据结构

2.1 数据结构的概念

  数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。
  在计算机中,数据元素并不是孤立的、杂乱无序的,而是具有内在联系的数
据集合。简单而言,数据结构就是数据元素之间的相互关系,即数据的组织
形式。

2.2 数据结构的分类 

数据结构分为:物理结构逻辑结构

2.2.1 逻辑结构

  逻辑结构反映的是数据元素之间的逻辑关系,是从具体问题抽象出来的数学模
型。逻辑结构可以分为四种: 集合结构、线性结构、树形结构、图形结构
2.2.1.1 集合结构
  (1)集合结构中的数据元素 除了同属于一个集合外 ,它们之间没有其他的关系。
  (2)集合中的数据元素是 平等 的,它们的共同特点是 同属于一个集合

【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法

2.2.1.2 线性结构
线性结构中的数据元素是 一对一的关系 。类似于小火车,从火车头开始,每一节车厢都连接着下一节火车。

 【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法

2.2.1.2 树形结构

【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法

    图形结构有点像我们现实中的大树一样,我们可以先从树根去看,首先是特别粗壮的树根然后再往上看是树枝,然后树枝上也有可能还是树枝然后到了叶子。把我们现实中的大树倒过来看就是树形结构。在树形结构中是一对多的关系,一棵大树有着多个树枝,一个树枝对应着多片叶子。 

【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法
2.2.1.2 图形结构
  图形结构我们可以想象一下我们使用的导航,从A点到B点我们可以乘坐的不同的交通工具。“法外狂徒”张三刚从A城偷走价值连城的宝物之后打算回到B城可以使用地铁、公交、私家车、单车进行出行,然后到达P城之后我们可以选择私家车、轮渡、火车。由此可见张三每到达一个城市可以选择多种交通工具。故 图形结构的数据元素是 多对多的关系

【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法

【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法

2.2.2 物理结构

2.2.2.1 物理结构概述

物理结构指的是 数据的逻辑结构在计算机中的存储形式 ,也称为 存储结构
物理存储结构反映的是如何将数据元素存储到计算机中的存储器中,存储结
构(物理结构)主要有两种: 顺序存储和链式存储
2.2.2.2 顺序结构
把数据元素存储在地址连续的存储单元里,数据元素的 逻辑次序和物理次序是一致的

   顺序结构类似于张三偷东西,张三每次在作案时都会事先想好偷东西的顺序,如果张三不严格按照作案的先后顺序,就会留下蛛丝马迹,被警察叔叔发现他作案的证据。

   我相信大家都应该对C语言不陌生吧,如果没有学过可以看博主的C语言专栏。在C语言中如果我们想要存储类型相同且可以存储大量数据。我们就会使用到数组,然后数组就是顺序结构。

  例如:数组 int[] a={100,20,3,56,266} ,它在内存中的存储形式如图所示:
【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法
2.2.2.3 链式结构
   链式存储结构: 把数据元素存放在任意的存储单元里,这组存储单元可以是
连续的,也可以是不连续的。
  链式存储并不能反映数据元素真正的逻辑关系,因此需要用一个 指针 存放数
据元素的地址,这样通过地址就可以找到相关联的数据元素。

  例如:张三深更半夜睡不着觉,因为今天张三入室盗窃了大量的欠款,想着放在家里不安全,于是就打算把现金存入银行了,去了银行里看人挺多就在叫号机前叫了个号然后坐在椅子上等待柜台小姐姐叫号,然后去办理业务。由此我们可以看出银行的排队系统,每人去了先领一个号,等着叫号。 在等待的过程中,在哪里都可以。这其实就是链式结构!【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法

总结

本期我们主要要了解的是数据结构概念性的内容,通过张三的故事我想大家应该有了对数据结构的大致了解,下期我们要学习的是算法的介绍。如果你需要参加应试考试请一定要记住前边的概念哦!

【数据结构与算法】不就是数据结构,数据结构与算法(C语言版),c语言,数据结构,算法文章来源地址https://www.toymoban.com/news/detail-726300.html

到了这里,关于【数据结构与算法】不就是数据结构的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【科大讯飞星火】如果说数据结构统治着整个计算机程序的世界,那么算法就可以被看作是程序员的全部装备。一般的来看的话,计算机本质就是信息的存储和处理的技术

    计算机科学是研究计算机及其相关技术的学科。它涵盖了多个领域,包括算法、数据结构、编程语言、操作系统、计算机网络等。本章将介绍计算机科学的基本概念和原理。 计算机硬件是指计算机的物理部分,包括中央处理器(CPU)、内存、硬盘、显示器、键盘等。其中,CPU

    2024年02月08日
    浏览(66)
  • 数据结构和算法——用C语言实现所有图状结构及相关算法

    本文所有代码均在仓库中,这是一个完整的由纯C语言实现的可以存储任意类型元素的数据结构的工程项目。 首先是极好的工程意识,该项目是一个中大型的CMake项目,结构目录清晰,通过这个项目可以遇见许多工程问题并且可以培养自己的工程意识。 其次是优秀的封装性(

    2024年02月06日
    浏览(222)
  • 数据结构与算法——排序(C语言实现)

    ✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅ ✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨ 🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿 🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟 🌟🌟 追风赶月莫停留 🌟🌟 🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀 🌟🌟 平芜尽处是春山

    2024年04月09日
    浏览(59)
  • C语言 数据结构与算法 I

    因为之前写算法都是用C++,也有了些C++基础,变量常量数据类型就跳过去吧。 首先是环境,学C++时候用Clion,C语言也用它写吧~ 新建项目,选C执行文件,语言标准。。。就先默认C99吧,反正是测试环境,应该问题不大 直接运行一手 嗯。。JB家的新UI。。真是。。。。。。。一

    2024年02月09日
    浏览(41)
  • C语言 数据结构--栈 括号匹配算法

    今天这一期使用栈来完成括号匹配算法 ① 栈结构 ② 初始化栈 ③ 入栈 ④ 出栈 ⑤ 判断栈是否为空 ⑤ 括号匹配 完整代码: 结果: (1)括号序列为char str[]={\\\'(\\\',\\\'{\\\',\\\'[\\\',\\\']\\\',\\\'}\\\',\\\')\\\'}; (2)括号序列为char str1[]={\\\'{\\\',\\\'(\\\',\\\'}\\\',\\\']\\\'};    

    2024年02月05日
    浏览(53)
  • 【C/C++数据结构与算法】C语言数据存储

    目录 一、大小端存储 二、整型提升和截断 三、数据的二进制存储 四、结构体内存对齐 大端存储 :数据的低位字节存储在高地址 小端存储 :数据的低位字节存储在低地址 不同编译器有不同的存储方式 提升 :短字节数据类型 --- 长字节数据类型 截断 :长字节数据类型 --

    2024年02月09日
    浏览(42)
  • 【学习笔记】数据结构算法文档(类C语言)

    1.1.1 线性表的顺序存储表示 1.1.2 顺序表中基本操作的实现 1.1.2.1 初始化 1.1.2.2 取值 1.1.2.3 查找 1.1.2.4 插入 1.1.2.5 删除 1.1.2.6 计数 1.2.1 单链表的定义和表示 ★ 关于结点 1.2.2 单链表基本操作的实现 1.2.2.1 初始化 1.2.2.2 取值 1.2.2.3 查找 1.2.2.4 插入 1.2.2.5 删除 1.2.2.6 前插法创建单

    2024年02月07日
    浏览(44)
  • (C语言)数据结构算法-病毒感染检测(BF算法&&KMP算法)

    病毒感染检测: 医学研究者最近发现了某些新病毒,得知它们的DNA序列都是环状的。为了快速检测出患者是否感染了相应的病毒,研究者将患者的DNA和病毒的DNA均表示成一些字母组成的字符串序列,然后检测某种病毒DNA序列是否在患者的DNA序列中出现过,如果出现过,则此人

    2024年02月08日
    浏览(48)
  • 内部排序算法比较-数据结构C语言课设

    名称: 内部排序算法比较 内容: 在教科书中,各种内部排序算法的时间复杂的分析结果只给出了算法执行时间的阶,或大概执行时间。试通过随机数据比较各种算法的比较次数和移动次数,以取得直观感受。 任务: (1)对以下7中常会用的内部排序算法进行比较

    2024年02月12日
    浏览(54)
  • [数据结构-C语言] 算法的时间复杂度

    目录 1.算法的复杂度 2.时间复杂度 2.1 时间复杂度的概念 2.2 大O的渐进表示法 3、常见时间复杂度计算举例 3.1 冒泡排序 3.2 二分查找 3.3 阶乘递归 3.4 斐波那契数列 1.算法的复杂度 算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源 。因此 衡量一个算法的

    2024年02月02日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包