算法分析第三次

算法分析O(n), O(nlogn)... 1. 定义 大O符号(Big O notation)是用于描述函数渐近行为的数学符号。更确切地说,它是用另一个(通常更简单的)函数来描述一个函数数量级的渐近上界。 2. 说明 f(n) = 2n^2 + 3n + 1 f(n) = O(n^2) or f(n) ∈ O(n^2) 为什么可以这么去描述? lim( f(n) / n^2) = a ( n--> 0, 阅读详情

1.1 ???

在这里插入图片描述
这个maybe可以从基于比较的排序算法,最好的,最坏时间复杂度

1.2

在这里插入图片描述
O(n^2):划分不平衡 T ( n ) = T ( n − 1 ) + T ( 0 ) + θ ( n ) T(n)=T(n-1)+T(0)+\theta(n) T(n)=T(n−1)+T(0)+θ(n)

1.3

在这里插入图片描述
有序:划分完全不平衡: T ( n ) = T ( n − 1 ) + T ( 0 ) + θ ( n ) T(n)=T(n-1)+T(0)+\theta(n) T(n)=T(n−1)+T(0)+θ(n)

2.2????!!!

在这里插入图片描述
快速排序的左右指针法,划分有三种实现:挖坑、左右指针、前后指针(教材所用)。
这里考察的就是左右指针,指针不停止移动指的是,交换(右指针先移动,遇到小于其的元素就停止移动,然后再移动左指针,左指针遇到大于其的元素就停止移动,这个时候就交换左右指针的元素;然后再从右指针开始移动,重复上述的过程。那么这里停止的意思,就是左右指针遇到其等于的元素也停止,这个时候就会发生交换)。
那么这样排序出来的元素,两指针就会在中间汇合,划分出来的区间基本是n/2。
https://blog.youkuaiyun.com/qq_37941471/article/details/80522354

2.3 !!

在这里插入图片描述
当三个元素定了的时候,是C答案,但是还有A33的排列组合
E

2.5 !!!

在这里插入图片描述
A
用数学方法计算期望,你会发现就是1:1;
设 X=比基准值小的数的个数
E X = ∑ k = 1 n p k X k = ∑ k = 1 n 1 n ( k − 1 ) = n 2 EX= \sum_{k=1}^n p_{k}X_{k} = \sum_{k=1}^n \frac{1}{n}(k-1) = \frac{n}{2} EX=k=1∑n​pk​Xk​=k=1∑n​n1​(k−1)=2n​
但是与那个长度为长:短,算出来是1:3的计算,是真的不一样
Y = 较短数组的长度
E Y = ∑ i = 1 n p i ∗ X i = 1 n ∑ i = 1 n X i = 2 n ∑ i = 1 2 / n X i   ( 后 半 部 分 与 前 面 对 称 ) = n 4 EY = \sum_{i=1}^n p_{i}*X_{i} = \frac{1}{n}\sum_{i=1}^n X_{i} = \frac{2}{n}\sum_{i=1}^{2/n} X_{i} \ (后半部分与前面对称) = \frac{n}{4} EY=i=1∑n​pi​∗Xi​=n1​i=1∑n​Xi​=n2​i=1∑2/n​Xi​ (后半部分与前面对称)=4n​
故为 n 4 : 3 n 4 \frac{n}{4}:\frac{3n}{4} 4n​:43n​

牟老师还逼逼了一堆直接可以看出来的方法
第七章快排的ppt还有几个算的知识点,一个三数取中,还有一个还是两个90%以上的时间的比例

2.6

在这里插入图片描述
则基准值应该在n/4~3n/4的范围内,则占n的1/2.

3.1 熟悉并且可以记忆

在这里插入图片描述
BCE

**错误点:**认为末尾O只能推出答案O,谁知道可以推出 \omega
另外,这道题如果要用substitution的方法去做的话,就硬展开就行,动用数学知识,虽然展开有点复杂,但是可以做到的(下面那个nlog^n的平方更为复杂,展开==)

着重说一下 \omega : T(n) = T(n/4)+T(3n/4) —> 去掉后面那个O(n)—可以推出刚好是 θ ( n ) \theta(n) θ(n) 则可以推出一定比n大

3.2 熟悉并且可以记忆

在这里插入图片描述
BCE

考虑熟悉一下这种形式
这个就是很复杂的展开,会用到完全平方公式,但是也会发现展开的时候有规律。当你试到 θ ( n l o g 2 ( n ) ) \theta(nlog^{2}(n)) θ(nlog2(n))就会发现大于等于、小于等于都是可以的,BE就自动成立了。

----另外说一下,当n无穷大的时候 log(n)<n^0.5 <log(n)^2

3.3 3.4 3.5???几种排序是要掌握的

在这里插入图片描述
BCF
DG

在这里插入图片描述

选择:theta(n^2)
冒泡:theta(n)??? 这个要看一下,有点怪异,这个可以看算法笔记 这个是因为这里用的是聪明的冒泡排序,终止条件:一次循环下来没有进行元素的交换,因而是只循环了第一次。
插入:thata(n)
合并: theta(nlog(n)) ???这个也要看一下,是前几章的ppt
快速:theta(n^2)
堆:???不知道
希尔:???不知道

XMU 算法分析与设计第三次上机题解 分组背包、多重背包、最小生成树、最短路、BFS、DFS、并查集、堆排序 阅读详情

相关推荐

算法分析中的渐进符号

在算法分析中,渐进符号用于描述算法在输入规模趋于无穷大时的运行时间或空间增长速率。主要的渐进符号包括 $O$、$\Omega$、$\Theta$、$o$ 和 $\omega$。这些符号各自描述了不同的增长界限,本文给出详细的定义和区别。

安祝老师的博客 1645

【算法学习笔记】O,Omega,Theta符号的使用

首先,O,Omega,Theta这三个符号并不一定和算法分析有关,这三个符号只是用来刻画函数的增长速度的(比如,微积分里那些什么什么余项也用到了小o记号)。假设有函数f(n)=3n^2+100n+1000,那么我们就可以说f(n)=O(n^2)=O(n^3),f(n)=Omega(n^2)=Omega(n), f(n)=Theta(n^2)。这里可以不涉及任何算法的什么最好最坏情况。

睹物思理 1万+

数据结构与算法分析—C语言描述 pdf

数据结构与算法分析—C语言描述 pdf

qq_43679402的博客 9820

算法分析与设计 第三次课外作业

TOC]

没事发发博客 579

《数据结构与算法分析—C语言描述》pdf

下载地址:网盘下载 内容简介 编辑 《数据结构与算法分析:C语言描述(原书第2版)》内容简介:书中详细介绍了当前流行的论题和新的变化,讨论了算法设计技巧,并在研究算法的性能、效率以及对运行时间分析的基础上考查了一些高级数据结构,从历史的角度和近年的进展对数据结构的活跃领域进行了简要的概括。由于《数据结构与算法分析:C语言描述(原书第2版)》选材...

weixin_30507481的博客 3513

shopee app算法分析第一篇

shopee app算法分析第一篇分析完整算法大概要好几篇,耐心等待下.国内只会发律师函,牛逼,一个律师套话,一个律师发函,大意了(警惕卡通律师头像),希望law可以保护好你,还是干国外好.

2531

算法分析与设计实践第三次作业

class Shape { void draw() {} } class Circle extends Shape { void draw() { System.out.println(“Circle.draw()”); } } class Square extends Shape { void draw() { System.out.println(“Square.draw()”); } } class Triangle extends Shape { void draw() { System.out.p

qq_33254048的博客 136

计算:第二部分 计算的数学基础 第 5 章 第三次数学危机 ZFC 公理集合论

《计算:第二部分 计算的数学基础 第5章 第三次数学危机 ZFC公理集合论》 关键词: 数学危机、ZFC公理、集合论、计算机科学、数学基础 摘要

AI天才研究院 987

算法分析与设计第三次作业

1.问题 写出两种检索算法:在一个排好序的数组T[1…n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0. 2.解析 1)顺序查找: 从数据结构线形表的一端开始,顺序扫描,依次将扫描到的结点关键字与给定值k相比较,若相等则表示查找成功;若扫描结束仍没有找到关键字等于k的结点,表示查找失败。 2)二分查找: 用给定值k先与中间结点的关键字比较,中间结点把线形表分成两个子表,若相等则查找成功;若不相等,再根据k与该中间结点关键字的比较结果确定下一步查找哪个子表,这样递归进行,直到查找到或

uncss的博客 143

车辆TBOX科普 第7次 TBOX技术深度解析:硬件架构与核心组件详解

摘要: TBOX(车载远程信息处理单元)是智能网联汽车的核心组件,承担数据采集、通信连接与安全交互等关键功能。其硬件架构以主控单元为核心,采用ARM架构处理器(如NXP i.MX系列)实现高效能低功耗处理,搭配DDR4/LPDDR5内存保障性能,eMMC/UFS存储确保数据可靠性。设计中需平衡车规级可靠性(AEC-Q100)、EMC兼容性及成本控制,同时集成通信、定位与安全模块。未来趋势聚焦异构计算、先进制程及功能安全(ASIL-D)与信息安全融合,推动TBOX向边缘计算节点演进。该技术是汽车智能化转型的重

IT深耕十余载,大道之简 861

Python RK3588 MPP 8路视频硬解码!全体目光向我看齐!

本文重写了官方demo、加入了Zlmediakit进行拉流并通过pybind11将代码封装成so库,现在,在python中直接通过import的方式,就能完成基础的拉流解码操作,目前支持8路拉流解码!!!

m0_46303486的博客 4879

【算法实验】算法分析与设计第三次实验Lab3

算法第三次实验汇总

gravity_w的博客 3192

llama.cpp量化模型在MTT显卡上的性能对比:S80/S3000/S4000实测数据

本文基于摩尔线程MTT S80、S3000和S4000三款显卡,对llama.cpp量化模型进行了深度性能实测。报告详细对比了不同量化精度(如Q4_K_M、Q6_K)在Llama 3.2 1B和Qwen 2.5 7B模型上的推理速度、显存占用、功耗及温度表现,为开发者根据硬件选择最优模型配置与参数调优提供了关键数据参考和实战指南。

week9的博客 350

西南交通大学算法分析与设计第三次作业

他们在修建高塔之前,先通过占卜确定每种类型的石块能够摆放的最大高度,然后再将他们一块一块垒起来,最终完成了高塔的建造。现在棋盘的某方形区域内摆满棋子,下图为该棋盘4*4的区域内摆放棋子的情况。输入要求:输入第一行为整数n,表示棋盘中放摆放棋子的行数和列数,其后的n行,每行有n个字符,由b和w组成,分别表示棋子的初始颜色。、绘制出迷宫问题的解空间树(只画两层)和第一条完整路径(如下图)的搜索空间树(可以手绘在纸上,拍照)。,分别表示该类型的石块的高度,该类型石块能够摆放在塔上的最大高度以及该类型石块的数量。

JellyfishKnight的博客 881

Python 驱动 CAD 二次开发:从零搭建自动化绘图环境

本文详细介绍了如何利用Python进行CAD二次开发,实现自动化绘图。通过win32com库建立Python与CAD软件的通信,文章从环境搭建、连接CAD、操作文档到核心绘图与批量处理,提供了完整的实战指南。该方法能显著提升机械设计、建筑绘图等领域的重复性工作效率,将创造力从繁琐劳动中解放出来。

weixin_29093169的博客 1230

Dify 进阶指南 | 5步打造智能JSON转换器(Excel数据预处理神器)

本文详细介绍了如何利用Dify平台的Chatflow功能,通过5个步骤构建一个智能JSON转换器,专门用于Excel数据预处理。该工具能够根据用户指令自动解析Excel表格,执行数据清洗、聚合计算,并精准输出定制化的JSON格式,极大提升前端开发、数据分析与测试工作的效率。

weixin_28520495的博客 575

算法分析与设计第三次编程作业 20042. Shortest Path 2.0

题目描述 给定一个大小为nnn的有权无向图GGG,求出从SSS到TTT的最短路径长度。 第一行四个整数n,m,S,Tn,m,S,Tn,m,S,T, nnn和mmm分别表示图GGG的点数和边数, S,TS, TS,T 分别表示路径的起点和终点。(保证S,TS, TS,T联通) 接下来mmm行,每行三个整数x,yx,yx,y和zzz,表示xxx和yyy之间有一条权值为zzz的边。 输入格式 第一行四个整数n,m,S,Tn,m,S,Tn,m,S,T, nnn和mmm分别表示图GGG的点数和边数, S,TS, TS

zhiyuan5986的博客 226

通过情感分类实例 详细介绍如果借助Huggingface平台 完成Transformers模型运行(包括配置环境-tokenizer-Model-输出头-预测)

attention_mask和padding是配套使用的,当人为去修改padding的时候,也要把attention_mask里面的参数进行修改。下载Huggingface包,Huggingface可以说是一个社区,集成了很多nlp的模型、数据集、预训练权重文件等等,并且免费,只需要pip install下载即可。那么用什么做分类就选择什么输出头,就import什么东西。代码中使用了自动分词器选择,它是由checkpoint指定的预训练模型关联的,不用我们自己选择tokenizer,它自动帮我们选择好了。

LZL2020LZL的博客 1135

渐进算法分析(简称算法分析)详解

本篇文章将要介绍: 文章目录1、什么是算法分析2、算法分析专有名词3、渐进算法分析a)、时间复杂度化简规则b)、如何得到算法的增长率c)、两个函数的增长率比较4、渐进算法分析的局限性5、算法分析扩展a)、问题的代价分析b)、空间代价c)、空间时间权衡原则d)、基于磁盘的空间/时间权衡规则 1、什么是算法分析 要明确算法分析这个概念,就要知道计算机程序设计的两个核心目标: 程序员角度:设计一种容易理解、编码和调试的算法 计算机角度:设计一种能有效利用计算机资源的算法 算法分析就是从计算机角度分析,是对一个

qq_45579563的博客 8058

Jetson Thor平台JP7.0版本96712 GMSL相机驱动调试记录

摘要:本文档记录了在Thor Custom Board (JP7.0GA)上配置GMSL摄像头时遇到的视频流问题及调试过程。问题表现为视频设备(/dev/video11)能正常创建,但获取视频时出现"Internal data stream error",而相同配置在AGX Orin JP6.0上运行正常。通过梳理硬件拓扑、v4l2-ctl测试、提升时钟频率及分析内核日志,发现VI引擎未接收到帧数据包。调试步骤包括检查设备树冲突、调整I2C总线配置、修正通道名称,最终通过屏蔽传感器启动时

jzwjzw19900922的博客 1109

国产系统(统信 UOS )漏洞修复方式

2.1 服务器版(单漏洞更新):服务器标准版:yum upgrade-minimal --cve “CVE编号”服务器 D 版:sudo apt update&&sudo apt install “受影响的软件包”1 统信 UOS 漏洞修复方式在线升级修复桌面专业版:通过以下步骤打开在线升级:控制中心–>更新–>更新设置–>打开系统更新、安全更新。安装过程中,请勾选“我已阅读并知晓”,然后点击“开始升级”。2 点击“检查更新”–“全部下载”,如果不想进行系统更新,可以选择只下载“安全更新”。

Reyn_观极 5015

算法分析入门

算法就是问题的程序化解决方案。它定义了一个良好的计算过程,取一组值作为输入,并产生一组值作为输出。。fill:#333;color:#333;color:#333;fill:none;

weixin_74252067的博客 738

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

算法分析的方法

从垂线,三等分引出计算,计算机科学又叫计算的科学 目标是使计算高效 算法正确性 可执行的操作 有穷举例hailstone函数 健壮就是在非法输入时保证程序不崩溃 最重要是使程序运行时间短,占用空间小 算法分析 正确性,采用数学证明 对数器 成本包括时间空间,不妨先主要考虑时间 这样我们就需要引入一把尺子 作为度量 Tn 一般n越大成本越大,n相同实例不同成本也不尽相同例如hailstone函数...

palepale 1946

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

算法分析 —— 概述

       作为一个已经2年经验的程序员,随着项目经验的逐渐积累,特别是技术栈深度和广度的逐渐扩展,现在越来越认识到算法基础 也是越来越重要,在某些时候更是会让你在技术栈深度扩展时过早的出现瓶颈(只知其一不知其二或者无法做到举一反三)。所以现在决定在算法领域开始自己的积累,也希望大家可以一起成长。        在算法的学习中,算法分析是基础的一部分,在设计算法的时候,效率是非常重要的因素之一...

qq_28382071的博客 1885

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

算法分析笔记

算法分析第一章 导论 第一章 导论 算法(Algorithm):对特定问题求解步骤的一种描述,是指令的有限序列。 算法被公认为是计算机科学的基石 算法理论的两大论题: (1)算法设计:面对一个问题,如何设计一个有效的算法。 (2)算法分析:对已设计的算法,如何评价或判断其优劣。 算法—程序的灵魂:问题的求解过程: 分析问题→设计算法→编写程序→整理结果 算法的五大特性: ⑴ 输入:一个算...

专注技术 1020

算法分析与设计_算法分析

算法分析与设计In this tutorial you will learn about analysis of algorithms. 在本教程中,您将学习算法分析。 Before learning analysis of algorithms lets quickly take a look on what is an algorithm and why we require it. 在...

culing2941的博客 436
上一篇: 算法分析第二次
下一篇: 算法作业第五次
ZanLanguage
博客等级 码龄7年 2粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值