当前位置: 首页 > news >正文

【数据结构与算法】1. 绪论

1. 绪论

1.1 数据结构

1.1.1 数据结构的基本概念

1.1.2 数据结构的三要素

数据结构三要素:

  • 逻辑结构

    划分方法一:

    • 线性结构:线性表、栈、队列、串
    • 非线性结构:树、图

    划分方法二:

    • 集合结构
    • 线性结构
    • 树形结构
    • 网状(图状)结构
  • 数据的运算

  • 存储结构(物理结构)

    • 顺序存储结构
    • 链式存储结构
    • 索引存储结构
    • 散列存储结构

1.2.1 算法的基本概念

算法特性:

  • 有穷性
  • 确定性
  • 可行性
  • 输入
  • 输出

1.2.2 算法的时间复杂度

  • 加法规则:多项相加,值保留最高阶的项,且系数变为1
  • 乘法规则:多项相乘,都保留

最好时间复杂度,最坏时间复杂度,平均时间复杂度
在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0rteyRsY-1692758458666)(assets/1687174701611.png)]

记忆:“常对幂指阶”

结论:

  1. 顺序执行的代码只会影响常数项,可以忽略
  2. 只需挑循环中的一条频度最大的语句分析他的执行次数与n的关系即可

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e3ZsLVc3-1692758458666)(assets/1687685631441.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PFssKfYN-1692758458667)(assets/1687686720211.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tFWGgEAM-1692758458667)(assets/1687686873754.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k28mBMu7-1692758458668)(assets/1687176670936.png)]

1.2.3 算法的空间复杂度

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mzEKHpTL-1692758458668)(assets/1687696611263.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IaoWZfi4-1692758458668)(assets/1687176996309.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CnilFTxn-1692758458669)(assets/1687177227984.png)]

在这里插入图片描述

相关文章:

【数据结构与算法】1. 绪论

1. 绪论 1.1 数据结构 1.1.1 数据结构的基本概念 1.1.2 数据结构的三要素 数据结构三要素: 逻辑结构 划分方法一: 线性结构:线性表、栈、队列、串非线性结构:树、图 划分方法二: 集合结构线性结构树形结构网状&…...

2023年京东儿童智能手表行业数据分析(京东销售数据分析)

儿童消费市场向来火爆,儿童智能手表作为能够实现定位导航,信息通讯,SOS求救,远程监听,智能防丢等多功能的智能可穿戴设备,能够通过较为精准的定位功能和安全防护能力保障儿童的安全,因而广受消费…...

数据结构(6)

2-3查找树 2-结点:含有一个键(及其对应的值)和两条链,左链接指向2-3树中的键都小于该结点,右链接指向的2-3树中的键都大于该结点。 3-结点:含有两个键(及其对应的值)和三条链,左链接指向的2-3树中的键都小于该结点&a…...

C++学习|CUDA安装和配置

CUDA安装和配置 Windows下安装CUDAVS项目配置CUDA Windows下安装CUDA 第一步:先看自己NIVIDIA显卡适合什么版本的CUDA。打开电脑的“NIVIDIA控制面板”->系统信息->组件。会看到我的显卡驱动最高支持的CUDA版本是11.4.56。 第二步:去CUDA官网&…...

3.若依前后端分离版开发用户自定义配置表格功能

一、背景 在项目上线测试的时候,关于同一个界面的表格,不同的用户会出现不同的字段排列需求,有些用户希望把A字段排在最前面,有些用户则希望A字段不显示。针对这种情况,开发一个表格自定义配置的功能,每个…...

【操作系统】24王道考研笔记——第三章 内存管理

第三章 内存管理 一、内存管理概念 1.基本概念 2.覆盖与交换 覆盖技术: 交换技术: 总结: 3.连续分配管理方式 单一连续分配 固定分区分配 动态分区分配 动态分区分配算法: 总结: 4.基本分页存储管理 定义&#xf…...

Spring缓存深入解析:@Cacheable的使用详解

摘要:在本文中,我们将深入研究Spring框架中的Cacheable注解。我们会通过详细的Java示例,探讨如何使用这个功能强大的注解来提升应用程序性能。 一、什么是缓存? 在计算机科学中,缓存是一种存储技术,用于保…...

软件配置安装(破解)--- jdk下载配置

下载jdk 如果有oracle账号的话直接登录下载你想要的版本 不然可以尝试镜像站 HUAWEI镜像:https://repo.huaweicloud.com/java/jdk/ 安装 配置(细节) 这里的JAVA_HOME就是java的家,也就是解压(或安装)之后的java的目录&#xff…...

idea使用docker生成镜像(打包镜像,导入镜像,导出镜像)

1:先下载安装dockerdesktop,安装成功后 2: 在cmd执行docker -v,查看安装的docker版本 C:\Users\dell>docker -v Docker version 24.0.5, build ced09963:需要启动 dockerdesktop应用,才算启动docker&a…...

wazuh环境配置

目录 一、wazuh的安装 1.1官方仓库安装 1.2虚拟机OVA安装 1.2.1 然后执行下面命令 1.2.2 这里还要下载脚本和config.yml配置文件,用来生成证书​编辑 1.2.3然后编辑config.yml文件,将下面的三个IP地址改为一样的 1.2.4运行./wazuh-certs-tool.sh以…...

【Linux】Linux下常用压缩解压缩指令及选项小结

0x00 前言 版本信息:Ubuntu 18.04.6 LTS 最后更新日期:2023.8.22 0x01 Linux下常用压缩解压缩指令小结 1.gzip指令 gzip file:压缩file文件为file.gz ,但是只能压缩文件不能压缩目录,且不保留源文件。若想打包目录…...

香蕉派社区推出带10G SFP+ 端口的Banana Pi BPI-R4 Wifi7开源路由器

香蕉派BPI-R4 根据著名Banana Pi品牌背后的公司Sinovoip提供的初步信息,他们即将推出的Banana Pi BPI-R4路由器板目前正在开发中。与之前的 Banana Pi R3 板相比,这在规格上将有显着提升。这就是我们目前所知道的。 您可以选择 R4 板的两种不同配置。具…...

A 题:震源属性识别模型构建与震级预测 :代码分析:

问题 1: 针对附件 1~8 中的地震波数据,找出一系列合适的指 标与判据,构建震源属性识别模型,进行天然地震事件(附件 1~7) 与非天然地震事件(附件 8)的准确区…...

源码分析CompletableFuture使用默认线程池ForkJoinPool的弊端

先说结论: 假如有20CompletableFuture任务并发执行时,都使用默认线程池ForkJoinPool,但cpu的核心数又小于3,那么就会新建20个线程(不使用默认线程池了),这20个线程相互竞争cpu资源和内存&#x…...

连接pgsql数据库 sslmode sslrootcert sslkey sslcert 参数的作用

sslmode 参数的作用 sslmode 参数用于指定数据库连接时使用的 SSL 加密模式。SSL(Secure Sockets Layer)是一种加密协议,用于保护数据在客户端和服务器之间的传输过程,以增加数据传输的安全性。sslmode 参数可以设置不同的值&…...

从零学算法3

3.给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2: 输入: “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “b”&…...

宠物小程序开发

在当今社会,宠物已成为许多人生活中不可或缺的一部分。宠物市场的持续增长为创业者提供了巨大的商机。然而,作为一个创业者,要在竞争激烈的宠物市场中脱颖而出并不容易。因此,开发一个专属于自己的宠物小程序成为了解决这一难题的…...

07-Vue基础之综合案例——小黑记事本

个人名片: 😊作者简介:一名大二在校生 🤡 个人主页:坠入暮云间x 🐼座右铭:懒惰受到的惩罚不仅仅是自己的失败,还有别人的成功。 🎅**学习目标: 坚持每一次的学习打卡 文章…...

vite4+vue3+electron23.3+ts桌面应用bs端开发 打包windows、linux、max三个系统的安装包

vite4vue3electron23.3ts桌面应用bs端开发 打包windows、linux、max三个系统的安装包 主要包依赖 "electron-store": "^8.1.0", //全局数据状态管理,可选择性安装"electron": "23.3.8","electron-builder": &q…...

限制 el-input 输入 emoji

1. 电脑如何输入 emoji 表情 ? 快捷键 win; 或 win. 2. 代码实现 <template><el-input v-model"input" placeholder"请输入内容" input"inputChange"></el-input> </template><script> export default {name: D…...

【计算机网络】0.0.0.0与127.0.0.1的深度解析:从本地回环到默认路由的实战应用

1. 从一次奇怪的连接问题说起 那天我在调试一个本地服务时遇到了件怪事&#xff1a;用服务器的内网IP&#xff08;192.168.1.100&#xff09;、127.0.0.1甚至直接输入0都能成功连接。这让我意识到很多开发者其实并不真正理解这些特殊IP地址的行为差异。就像开车时只知道踩油门能…...

2022年中国90米人口密度栅格数据(LandScan)|高精度、单年快照、科研级空间人口产品

&#x1f50d; 数据简介 本数据基于全球权威人口空间分布模型 LandScan™&#xff08;由美国橡树岭国家实验室 ORNL 开发&#xff09;&#xff0c;并融合2020年第七次全国人口普查乡镇级数据、10米土地利用、VIIRS夜间灯光、OSM路网与建筑物足迹&#xff0c;生成 2022年中国90米…...

小米平板5 Windows驱动包:让Windows在平板上流畅运行的终极指南

小米平板5 Windows驱动包&#xff1a;让Windows在平板上流畅运行的终极指南 【免费下载链接】MiPad5-Drivers Based on Surface Duo Drivers. 项目地址: https://gitcode.com/gh_mirrors/mi/MiPad5-Drivers 想要在小米平板5上完美运行Windows系统吗&#xff1f;MiPad5-D…...

SDXL 1.0绘图工坊效果展示:多风格高清作品集,看看AI能画出多惊艳的图片

SDXL 1.0绘图工坊效果展示&#xff1a;多风格高清作品集&#xff0c;看看AI能画出多惊艳的图片 1. 开篇&#xff1a;当AI成为数字艺术家 想象一下&#xff0c;你只需要输入一段文字描述&#xff0c;就能在几秒钟内获得一张细节丰富、风格多样的高清图像——这不是科幻电影&am…...

如何快速实现 Nativefier 桌面应用时间同步:完整 NTP 服务配置指南

如何快速实现 Nativefier 桌面应用时间同步&#xff1a;完整 NTP 服务配置指南 【免费下载链接】nativefier Make any web page a desktop application 项目地址: https://gitcode.com/gh_mirrors/na/nativefier Nativefier 是一款能将任何网页转换为桌面应用的强大工具…...

高效资源下载全攻略:多平台资源获取工具使用指南

高效资源下载全攻略&#xff1a;多平台资源获取工具使用指南 【免费下载链接】res-downloader 资源下载器、网络资源嗅探&#xff0c;支持微信视频号下载、网页抖音无水印下载、网页快手无水印视频下载、酷狗音乐下载等网络资源拦截下载! 项目地址: https://gitcode.com/GitH…...

【记录】LLM|解答家人对AI大模型工具选取的一些疑问

写于2026年3月26日晚上。 作为一个相关研究的研究生&#xff0c;我觉得有必要针对还在读高中的同学&#xff08;实则是针对亲戚&#xff09;写一点大模型的使用简明教程。这里并不打算废话太多关于所谓提示词工程或者是AI焦虑类型的内容&#xff0c;只是想从一个长辈的角度尽量…...

C++笔记 缺省值 函数重载 名字空间域(基础核心)

本文为C基础核心知识点笔记&#xff0c;聚焦「缺省值」「函数重载&#xff08;概念&#xff09;」「名字空间域」三大高频基础考点&#xff0c;语言通俗、重点突出&#xff0c;兼顾入门理解和考试记忆&#xff0c;适合新手入门、作业复习及GitHub归档。一、缺省值&#xff08;默…...

快速部署PyTorch 2.5:预装CUDA环境实战教程

快速部署PyTorch 2.5&#xff1a;预装CUDA环境实战教程 本文是一篇基础教程类文章&#xff0c;旨在帮助开发者快速上手使用预装了PyTorch 2.5和CUDA环境的深度学习镜像。无论你是刚接触深度学习的新手&#xff0c;还是需要快速搭建开发环境的老手&#xff0c;这篇教程都能让你…...

从Desat故障到设计哲学:构建高鲁棒性控制器的系统化方法

1. 从Desat故障现象说起&#xff1a;IGBT的"心脏病发作" 第一次遇到Desat故障报警时&#xff0c;我盯着示波器上跳动的波形百思不得其解——明明电路设计完全参照了芯片厂商的参考方案&#xff0c;为什么样机在高温测试时频繁报错&#xff1f;这种经历相信很多电力电…...