数据结构(Java版)绪论

news2024/9/30 21:31:00

一、数据结构绪论

1、概论

🍎数据结构研究计算机的操作对象以及他们之间的关系操作

CSDN:酥脆的松塔

2、算法的定义、特征、设计要求

算法:是对特定问题求解步骤的一种描述,它是指令的有限序列,是一系列输入转化为输出的计算步骤。
算法的特征:输入、输出、有穷性、确定性、可行性。
算法的设计要求:正确性、可读性、健壮性、效率与低存储量需求。

3、算法复杂度

通常我们用时间复杂度空间复杂度来衡量一个算法的优劣。

3.1 时间复杂度

从时间的维度上对算法进行衡量,忽略程序具体的运行时间,从算法整体方面去考虑 ,通常使用:「 大O符号表示法 」,

即 T(n) = O(f(n))。利用 大O符号有三个作用:

​ 🍊 限制忽略数学公式中低阶项产生的误差;

​ 🍉 限制由于忽略程序中对运行时间贡献小的部分产生的错误;

​ 🍋 允许我们按照算法总运行时间的上界对算法进行分类。

常见的时间复杂度量级有:常数阶O(1) < 对数阶O(logN)、线性阶O(n)、线性对数阶O(nlogN)、平方阶O(n²)、立方阶O(n³)、
K次方阶O(nk)、 指数阶O(2n)。

时间复杂度由优逐渐变差

3.2 空间复杂度

空间复杂度是对一个算法在运行过程中临时占用存储空间大小的一个量度,同样反映的是一个趋势,我们用 S(n) = O(f(n))来定义。

常见的空间复杂度量级有:O(1)、O(n))、O(n²)

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

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

相关文章

篮球杯 双指针专题

总的来说&#xff0c;双指针分为while(1)类型和尺取法类型可以解决各种问题&#xff08;如子序列问题&#xff09;活动 - AcWing思路&#xff1a;while(1)型的双指针基本形式为&#xff1a;while(1){if(l>n||r>n) break;while(条件&&l<n) l;rl;while(条件&…

使用Platform Designer创建Nios II 最小系统

Nios II简介 ​ Nios II 软核处理器十多年前就有了&#xff0c;它和xilinx的MicroBlaze类似&#xff0c;性能相比硬核处理器要差得多&#xff0c;工程应用也不是很多&#xff0c;那还有必须学习一下吗&#xff1f;我个人认为了解一下Nios II开发流程&#xff0c;对intel FPGA开…

9.网站数据统计

1.Redis 高级数据类型&#xff08;1&#xff09;HyperLogLog统计20万个重复数据的独立总数// 统计20万个重复数据的独立总数. Test public void testHyperLogLog() {String redisKey "test:hll:01";for (int i 1; i < 100000; i) {redisTemplate.opsForHyperLog…

8年测开经验面试28K公司后,吐血整理出高频面试题和答案

#01、如何制定测试计划&#xff1f; ❶参考点 1.是否拥有测试计划的制定经验 2.是否具备合理安排测试的能力 3.是否具备文档输出的能力 ❷面试命中率 80% ❸参考答案 测试计划包括测试目标、测试范围、测试环境的说明、测试类型的说明&#xff08;功能&#xff0c;安全&am…

深入解读.NET MAUI音乐播放器项目(三):界面交互

UI设计的本质是对于产品的理解在界面中多种形式的映射&#xff0c;当需求和定位不同时&#xff0c;对相同的功能表达出了不同的界面和交互方式。 作为播放器&#xff0c;界面可以是千差万别的。《番茄播放器》的iOS平台上我开发了传统版本&#xff0c;和基于手势播放的版本。 …

Word处理控件Aspose.Words功能演示:使用 C++ 在 Word (DOC/DOCX) 中添加或删除水印

Aspose.Words 是一种高级Word文档处理API&#xff0c;用于执行各种文档管理和操作任务。API支持生成&#xff0c;修改&#xff0c;转换&#xff0c;呈现和打印文档&#xff0c;而无需在跨平台应用程序中直接使用Microsoft Word。此外&#xff0c; Aspose API支持流行文件格式处…

Nacos未授权访问漏洞

Nacos介绍 Nacos 的官网地址为&#xff1a; https://nacos.io 它是阿里开源的 SpringCloud Alibaba 项目下的一项技术&#xff0c;可以实现服务注册中心、分布式配置中心。 一般来说&#xff0c;nacos被建议部署在内网中&#xff0c;如果在外网出现&#xff0c;会有很大的风险…

NCRE计算机等级考试Python真题(三)

第三套试题1、按照“后进先出”原则组织数据的数据结构是_______A.栈B.双向链表C.二叉树D.队列正确答案&#xff1a; A2、以下选项的叙述中&#xff0c;正确的是&#xff1a;A.在循环队列中&#xff0c;只需要队头指针就能反映队列中元素的动态变化情况B.在循环队列中&#xff…

数学小课堂:虚数的媒介工具作用(虚构一个现实中不存在的概念,来解决现实问题)

文章目录 引言I 预备知识1.1 平方根1.2 三次方程1.3 极坐标II 虚数2.1 虚数的来源2.2 理解虚数存在的必要性2.3 虚数的影响III 复数3.1 人类认知升级的过程3.2 数字的扩展历史3.3 复数的用途引言 虚数的来源和存在的必要性:三次方程是一定有实数解的,因此根号里面负数的问题…

SREWorks前端低代码组件生态演进:monorepo架构重构和远程组件加载实践

作者&#xff1a;王威&#xff08;地谦&#xff09; 文章结构 项目背景演进分析monorepo架构演进 Webpack与Rollup如何平滑迁移构建优化 组件的可扩展与可插拔演进总结版本动态 项目背景 SREWorks是一个面向企业级复杂业务的开源云原生数智运维平台&#xff0c;是大数据SR…

wafw00f 防火墙探测

kali机器自带防火墙探测工具wafw00&#xff0c;它可以通过发送正常以及不正常甚至包含恶意代码的HTTP请求&#xff0c;来探测网站是否存在防火墙&#xff0c;并识别防火墙的厂商及类型。安装&#xff1a;git clone https://github.com/EnableSecurity/wafw00f.git python setup…

Windows下载安装Prometheus

目录 资料 下载 解压 点击prometheus.exe运行 资料 Prometheus是一个开源的系统监控和报警系统&#xff0c;同时也支持多种exporter采集数据&#xff0c;还支持pushgateway进行数据上报&#xff0c;Prometheus性能足够支撑上万台规模的集群。 官网&#xff1a;https://pr…

DSIN模型

DSIN模型提出得动机&#xff1a;用户得行为是由会话组成得&#xff0c;在每个会话内部用户得行为是相似得&#xff0c;会话之间得用户的行为是存在较大差异性得&#xff0c;而其他模型都没有关注这点&#xff0c;所以就有了DSIN模型。 在这里我们来讲下DSIN关键得四层&#xf…

PR9268/300-000库存现货振动传感器 雄霸工控

PR9268/300-000库存现货振动传感器 雄霸工控PR9268/300-000库存现货振动传感器 雄霸工控SDM010PR9670/110-100PR9670/010-100PR9670/003-000PR9670/002-000PR9670/001-000PR9670/000-000PR9600/014-000PR9600/011-000PR9376/010-021PR9376/010-011PR9376/010-011PR9376/010-001…

2023年最新qq空间说说怎么全部删除_QQ空间说说如何批量删除

2023年最新QQ空间自动删除说说_2023批量删除QQ空间说说插件小工具_QQ空间如何一次性批量删除说说 一千多条说说怎么删&#xff1f;QQ空间说怎么批量删除_怎样把发的空间说说全删了 使用谷歌浏览器插件&#xff0c;一键安装之后&#xff0c;就可以实现「自动删除」和「手动批量…

SQL入门DEMO

单表查询 ● --查询订购日期在1996年7月1日至1996年7月15日之间的订单的订购日期、订单ID、客户ID和雇员ID等字段的值 ● --查询供应商的ID、公司名称、地区、城市和电话字段的值。条件是“地区等于华北”并且“联系人头衔等于销售代表”。 –查询供应商的ID、公司名称、地…

如何将Google浏览器安装到D盘(内含教学视频)

如何将Google浏览器安装到D盘&#xff08;内含教学视频&#xff09; 教学视频下载链接地址&#xff1a;https://download.csdn.net/download/weixin_46411355/87503968 目录如何将Google浏览器安装到D盘&#xff08;内含教学视频&#xff09;教学视频下载链接地址&#xff1a;…

正态性检验全流程

正态性检验处理流程 一、分析问题 在实际研究中&#xff0c;正态性是很多研究方法在进行分析时需要满足的前提条件。常见的比如方差分析、T检验、相关分析、回归分析等等&#xff0c;这些分析方法使用的前提假定就是需要数据满足正态分布。 但是这一点经常被分析人员有意或无…

潜伏的 Linux Rootkit:Syslogk

Rootkit 是非常危险的恶意软件&#xff0c;一旦侵入就很难被发现。开发 Rootkit 通常更加困难&#xff0c;很多攻击者都倾向于重用开源项目。 Adore-Ng 是一个相对较老的、开源的 Linux 内核 Rootkit&#xff0c;最初针对内核 2.x 版本开发&#xff0c;但目前已更新为针对内核…

【黑马JVM(1)】内存结构

JVMJVM/JRE/JDK示例JVM内存管理JVM整体架构程序计数器虚拟机栈栈内存溢出线程诊断 top/ps -H/jstack案例一&#xff1a;CPU占用过多案例二&#xff1a; 程序运行很长时间没结果本地方法栈堆堆内存溢出堆内存诊断案例一&#xff1a;jps/jmap/jconsole工具使用案例二&#xff1a;…