数据结构新手引导

文章介绍了C语言中的数据结构概念,强调了思维型学习的重要性,区别于记忆型学习,鼓励深度思考。数据结构是带有结构特性的数据元素集合,涉及逻辑结构和存储结构。同时,提到了计算机算法的设计和模块化的思想在软件开发中的应用,以及数据结构在构建复杂软件系统中的基础作用。
摘要由CSDN通过智能技术生成

@[TOC]入门级c语言数据结构讲解,

学习准备!机器姬

选择学习模式,是思维型还是记忆型。
思维:深度思考,侧重分析推理,可延申拓展概念
记忆:简单理解概念,快速记忆并使用概念
现在大部分学校都是记忆型学习模式教学,让学生侧重于记忆和技巧,而国外学校则看重对学生思维的培养。
如果你习惯了记忆型学习模式,不如试一试思维型,深度思考,挖掘计算机深处的思维演化。为顺应学校制度,思维型仅供学生个人拓展。

简单了解数据结构

定义:数据结构(data structure)是带有结构特性的数据元素的集合,它研究的是数据的逻辑结构和数据的物理结构以及它们之间的相互关系,并对这种结构定义相适应的运算,设计出相应的算法,并确保经过这些运算以后所得到的新结构仍保持原来的结构类型。简而言之,数据结构是相互之间存在一种或多种特定关系的数据元素的集合,即带“结构”的数据元素的集合。“结构”就是指数据元素之间存在的关系,分为逻辑结构和存储结构。
接下来了解什么是计算机算法——计算机处理问题的方法
计算机处理问题的方法主要有

1.从具体问题抽象出数学模型(设计对函数分析流程,其方法即计算机算法统一的基本操作。)
包括:分析问题-提取操作对象-操作对象之间的关系-数学语言描述
2.设计算法——根据需求
3.编程、调试、运行
数据结构

拓展: 计算机本质也是数学演化的另一个形式载体(你可以理解为这是另一个演化体系) 从数值到抽象之间的动态变化,主要操作对象是数据,最终本质为数字。数学家都知道数学本质是数字(仅从表面看是这样的)。

数据结构研究内容和应用展示

##数据结构的应用例子
书目自动检索系统
人机对弈
文件系统结构图
在这里插入图片描述
多叉路口交通灯

##模块化的定义
模块化的宗旨是效益。它的意图和最终目的就是为了满足人们对多样化的需求和适应激烈的市场竞争,在多品种、小批量的生产方式下,实现最佳的效益和质量。模块化的对象是产品或系统的构成,模块化不是研究和解决某一个孤立的产品或系统的设计或构成的问题,而是解决某类产品或系统的最佳构成形式问题,即系统由标准化的模块组合而成。由于模块化的对象是系统,因而运用系统工程的原理和方法,是开展模块化的基本原则。模块化的主要方法是系统的分解和组合,模块化的产品或系统是由标准的模块组成的。模块如何产生,能否有效地组合成产品或系统,产品或系统的分解和组合的技巧和运用水平,是模块化的核心问题。模块化的目标是建立模块系统和对象系统。模块化活动的目标或产物有两个,即形成模块系统和模块化的产品系统。建立模块系统是实施模块化设计的前提,形成模块化产品或系统则是模块化的最终归宿。

非数值问题

数据结构的研究内容是构造复杂软件系统的基础,(与人类数理逻辑体系相似,计算机也有自己的逻辑体系,多去了解计算机思维的发展)
主要操作是分解与抽象。通过模块化的分解可以划分出数据的3个层次,(我们常常使用的思维导图就是分解)
再通过抽象,舍弃数据元素的具体内容,就得到逻辑结构。
类似地,通过分解将处理要求划分成各种功能,再通过抽象舍弃实现细节,就得到运算的定义。
上述两个方面的结合可以将问题变换为数据结构。这是一个从具体(具体问题)到抽象(数据结构)根据实际需求增加实现细节,存储结构和实现运算,完成设计任务。
这是一个从抽象(即数据结构)到具体(即具体实现)的过程。
注意:计算机的教材中许多专业用语都是概念性描述,比较抽象,建议新手多实践,可结合离散数学来理解其核心概念。
##基本概念
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结:数据与数据元素与数据项,与线性代数行列式所相关,都有集合、对应关系等数学思维联系。
数据结构:数据元素之间的逻辑关系、数据元素以及其关系在计算机中的表示、数据的运算和实现。
(后面还有,自己去专业书里找)

小图片少女

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值