241114.学习日志——[CSDIY] [CS]数据结构与算法 [00]

CSDIY:这是一个非科班学生的努力之路,从今天开始这个系列会长期更新,(最好做到日更),我会慢慢把自己目前对CS的努力逐一上传,帮助那些和我一样有着梦想的玩家取得胜利!!!
第一弹:Cpp零基础学习【30 DAYS 从0到1】
第二弹:Cpp刷题文档【LeetCode】
第三弹:Go开发入门【字节后端青训营】
第四弹:Cpp简单项目开发【黑马Rookie】
第五弹:数据结构绪论【数据结构与算法】

总所周知,计算机四大天王:数据结构、计算机网络、计算机组成与结构、计算机编译系统
其中数据结构应该是本科最早接触的一门,本次CSDIY就是博主初入数据结构的学习笔记,所用教材为《大话数据结构》,学习周期大约为14days(不含实践)。适合具有C语言基础的学习者学习。

1.3 数据结构起源

数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。

程序设计=数据结构+算法

1.4 基本概念和术语

数据→数据元素→数据项→数据对象→数据结构

数据(Data):

用于描述客观事物的数值、字符等一切可以输入到计算机中,由计算机加工处理的符号集合。

数据元素(Data Element):

数据的基本单位,数据中的一个个体。处理时作为一个整体看待。

数据项(Data Item):

构成数据元素的成分,是数据不可分割的一部分。

数据对象(Data Object):

具有相同特征的数据元素的一个集合,他是数据的子集。注:数据对象可以是有限或无限的。

结构(Structure)

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

1.5 逻辑结构与物理结构

逻辑结构

  • 集合结构:元素同属于一个集合,此外无其他关系
  • 线性结构:一对一的关系
  • 树形结构:一对多的关系
  • 图形结构:多对多的关系

物理结构

物理结构:是指数据的逻辑结构在计算机中的存储格式

  • 顺序存储结构:逻辑结构与物理关系一致 EX:数组
  • 链式存储结构:存储单元可以不连续 EX:链表

逻辑结构是面向问题的,物理结构是面向计算机的。

1.6 数据类型

数据类型:一组性质相同的值的集合及定义在此集和上的一些操作的总称

抽象数据类型

抽象数据类型(Abstract Data Type,ADT):一个数学模型及定义在该模型上的一组操作

三个部分组成:数据、关系、操作。

ADT 抽象数据类型名
Data数据元素之间逻辑关系的定义
Operation操作1初始条件操作结果描述操作2...操作3...endADT

碎碎念,绪论一直被认为是一门课最不重要的一部分,在我看来,恰恰相反,一门课往往是最吸引我进行这门课学习的部分,相比于之后的高级复杂的术语来说,绪论部分简单的引入和吸引兴趣的表达往往带给我很多想法。其次,这一部分笔记其实大部分写于2407,对CS的兴趣驱使我进行提前预习,加之本学期也有相关课程,我也再重新整理了部分,并分享给各位,希望能够有帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/60816.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Oracle 11g rac 集群节点的修复过程

Oracle 11g rac 集群节点的修复过程 目录 Oracle 11g rac 集群节点的修复过程一、问题的产生二、修复过程1、执行 roothas.pl 命令2、执行 root.sh 命令3、查看集群信息4、查看节点2的IP地址5、查看节点2的监听信息 一、问题的产生 用户的双节点 Oracle 11g rac 集群&#xff…

Python进程间通讯大揭秘:原理深度剖析与实战案例分享

在Python编程中,进程间通讯(Inter-Process Communication,简称IPC)是一个不可或缺的概念。它允许多个进程在操作系统中相互协作,共享信息或执行特定的任务。本文将深入剖析Python进程间通讯的原理,并通过实例展示其实现方法,帮助读者更好地理解和应用这一技术。 一、进程…

【C++】—— map 与 set 深入浅出:设计原理与应用对比

不要只因一次失败,就放弃你原来决心想达到的目的。 —— 莎士比亚 目录 1、序列式容器与关联式容器的概述与比较 2、set 与 multiset 2.1 性质分析:唯一性与多重性的差异 2.2 接口解析:功能与操作的全面解读 3、map 与 multimap 3.1 性…

基于微信小程序的平安驾校预约平台的设计与实现(源码+LW++远程调试+代码讲解等)

摘 要 互联网发展至今,广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对高校教师成果信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力…

SpringBoot+Vue3开发会议管理系统

1 项目介绍 会议管理系统,简化公司内会议方面的流程,提供便捷。实现对会议室的管理、会议的管理、会议预约的管理,三大主流程模块。 系统分为三种角色,分别是员工、管理员和超级管理员。 员工角色功能:查看会议室占…

HTTP常见的状态码有哪些,都代表什么意思

HTTP 协议定义了一系列的状态码,用于描述服务器对客户端请求的处理结果。这些状态码分为五个类别,每个类别都有特定的用途。 常见状态码 1开头 信息性状态码 这些状态码表示请求已被接收,继续处理。 100 Continue:客户端应继续…

Docker环境搭建Cloudreve网盘服务(附shell脚本一键搭建)

Docker搭建Cloudreve Cloudreve介绍: Cloudreve 是一个基于 ThinkPHP 框架构建的开源网盘系统,旨在帮助用户以较低的成本快速搭建起既能满足个人也能满足企业需求的网盘服务。Cloudreve 支持多种存储介质,包括但不限于本地存储、阿里云OSS、…

Cadence安装

记录一下安装过程,方便以后安装使用Cadence。 去吴川斌的博客下载安装包,吴川斌博客: https://www.mr-wu.cn/cadence-orcad-allegro-resource-downloads/ 下载阿狸狗破戒大师 我这边下载的是版本V3.2.6,同样在吴川斌的博客下载安装…

系统架构设计师:系统架构设计基础知识

从第一个程序被划分成模块开始,软件系统就有了架构。 现在,有效的软件架构及其明确的描述和设计,已经成为软件工程领域中重要的主题。 由于不同人对Software Architecture (简称SA) 的翻译不尽相同,企业界喜欢叫”软件架构“&am…

Tcp/Ip协议,tcp相关文章,网络编程,通信协议文章汇总

学习时候,有些书籍过一段时间就忘记了。常读常新,特此留下地址方便再次阅读! 都是网络协议相关的,tcp/ip, arp, dhcp, icmp, http 1. tcp/ip 协议卷 《TCP/IP详解 卷1:协议》在线阅读版(全网唯一&#xf…

7-4 顶点的度

求无向图G中各顶点的度。建议分别采用邻接矩阵和邻接表这两种不同的存储结构完成。 输入格式: 首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试第一行输入2个整数n、m(2≤n≤26,1≤m≤n(n-1)/2&#xff09…

【Electron】总结:如何创建Electron+Element Plus的项目

我将结合官网手册与AI问到的信息,直接给出步骤,与命令。 一、准备环境 首先在C盘Users,你的登录的账号名文件夹下,编辑.npmrc文件。添加镜像地址。 如果使用了yarn,则是.yarnrc。可以全部都配置。 npm install -g …

客户端发送http请求进行流量控制

客户端发送http请求进行流量控制 实现方式 1:使用 Semaphore (信号量) 控制流量 asyncio.Semaphore 是一种简单的流控方法,可以用来限制并发请求数量。 import asyncio import aiohttp import timeclass HttpClientWithSemaphore:def __init__(self, …

Java Web 工程全貌

通过下图,我们可以一览 Java Web 工程的全貌 通过上图,我们能够基本窥探整个 Java Web 工程的面貌,包括前端,后端,甚至是运维。 接下来,我们就结合文字描述,加深理解。 部署Vue前端和Spring…

Linux入门:环境变量与进程地址空间

一. 环境变量 1. 概念 1️⃣基本概念: 环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数 如:我们在编写C/C代码的时候,在链接的时候,从来不知道我们的所链接的动态静态库在哪里&#x…

Redis数据结构及实现

目录 1. Redis与数据结构简介2. Redis五种数据结构详解3. Python面向对象实现Redis数据结构1. String结构2. List结构3. Set结构4. SortedSet结构5. Hash结构 4. 数据结构应用案例及代码实现案例 1:使用Redis String实现计数器案例 2:使用Redis List实现…

【优选算法 — 滑动窗口】水果成篮 找到字符串中所有字母异位词

水果成篮 水果成篮 题目描述 因为只有两个篮子,每个篮子装的水果种类相同,如果从 0 开始摘,则只能摘 0 和 1 两个种类 ; 因为当我们在两个果篮都装有水果的情况下,如果再走到下一颗果树,果树的水果种类…

Java 中使用Mockito 模拟对象的单元测试的快速示例

Mockito是一个流行的Java模拟框架,它允许你在单元测试中创建和配置模拟对象,以便在测试过程中替换那些不容易构造或获取的对象。 Mockito可以与JUnit无缝集成,下面的示例演示 Mockito JUnit实现模拟对象的单元测试。 依赖导入 这里使用Mav…

STM32 创建一个工程文件(寄存器、标准库)

首先到官网下载对应型号的固件包: 像我的STM32F103C8T6的就下载这个: 依次打开: .\STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm 可以看到: 这…

vue-h5:在h5中实现相机拍照加上身份证人相框和国徽框

方案1:排出来照片太糊了,效果不好 1.基础功能 参考: https://blog.csdn.net/weixin_45148022/article/details/135696629 https://juejin.cn/post/7327353533618978842?searchId20241101133433B2BB37A081FD6A02DA60 https://www.freesio…