平面设计师长逛的网站有哪些兼职做ppt是哪个网站

diannao/2025/10/26 14:28:09/文章来源:
平面设计师长逛的网站有哪些,兼职做ppt是哪个网站,外包公司能去吗,百度在线搜索看这篇前请先把我上一篇了解一下#xff1a;深入理解数据结构第一弹——二叉树#xff08;1#xff09;——堆-CSDN博客 前言#xff1a; 相信很多学习数据结构的人#xff0c;都会遇到一种情况#xff0c;就是明明最一开始学习就学习了时间复杂度#xff0c;但是在后期…看这篇前请先把我上一篇了解一下深入理解数据结构第一弹——二叉树1——堆-CSDN博客 前言 相信很多学习数据结构的人都会遇到一种情况就是明明最一开始学习就学习了时间复杂度但是在后期自己写的程序或者是做到哪个需要判断时间复杂度的题时仍然判断不出来时间复杂度是多少今天我们结合我们上期学习的堆给大家深入剖析一下时间复杂度这个概念同时更深入的理解堆的概念方便我们后期应用堆进行排序等。 目录 一、堆排序 1、堆排序的大体思路 2、堆排序的实例讲解 二、堆排序的时间复杂度 向下排序的时间复杂度 向上排序的时间复杂度 堆排序整体的时间复杂度 总结 一、堆排序 1、堆排序的大体思路 在上一篇我们已经讲过了堆是什么东西我们已经知道堆有大堆和小堆两种形式堆排序的想法正是借助它的这个特点诞生的例如 数组 { 78 3 5 1 9 5 4}在堆中分布为 如图展示的是小堆首先我们先强调一点降序是需要小堆来解决升序是需要大堆来解决 比如说图上这个数组我们要求它的降序序列时因为堆顶元素一定是堆中最小的所以我们就可以把堆顶元素与堆尾元素进行交换然后把堆尾元素刨除在外再进行降序排列 2、堆排序的实例讲解 堆排序与堆相比并没有什么新东西把我前面那章看明白这里直接把代码呈上 除了test.c其他的是直接从上一章搬过来的 Seqlist.h typedef int HPDataType; typedef struct Heap {HPDataType* a;int sz;int capacity; }HP;//初始化 void HeapInit(HP* php); //销毁 void HeapDestory(HP* php); //插入 void HeapPush(HP* php, HPDataType x); //删除 void HeapPop(HP* php); //找堆顶元素 HPDataType HeapTop(HP* php); //判断是否为空 bool HeapEmpty(HP* php); //算个数 int HeapSize(HP* php); test.c //堆排序 void HeapSort(int* a, int n) {//建堆——向下调整建堆O(N-log(n))for (int i (n - 1 - 1) / 2; i 0; i--){AdjustDown(a, n, i);}int end n - 1;while (end 0){Swap(a[0], a[end]);//再调整选出次小数AdjustDown(a, end, 0);end--;} } int main() {int a[] { 7,8,3,5,1,9,5,4 };HeapSort(a, sizeof(a) / sizeof(int));return 0; } Seqlist.c //堆 //初始化 void HeapInit(HP* php) {assert(php);php-a NULL;php-capacity 0;php-sz 0; } //销毁 void HeapDestory(HP* php) {free(php-a);free(php); } //交换 void Swap(HPDataType* p1, HPDataType* p2) {HPDataType tmp *p1;*p1 *p2;*p2 tmp; } //删除//向上调整(小堆) void AdjustUp(HPDataType* a, int child) {int parent (child - 1) / 2;while (child 0){if (a[child] a[parent]){Swap(a[child], a[parent]);child parent;parent (child - 1) / 2;}else{break;}} } //向下调整 void AdjustDown(int* a, int n, int parent) {int child parent * 2 1;while (childn){if (child1na[child 1] a[child]){child;}if (a[child] a[parent]){Swap(a[child], a[parent]);parent child;child parent * 2 1;}else{break;}} }//插入 void HeapPush(HP* php, HPDataType x) {assert(php);if (php-sz php-capacity){int newcapacity php-capacity 0 ? 4 : php-capacity * 2;HPDataType* tmp (HPDataType*)realloc(php-a, sizeof(HPDataType) * newcapacity);php-a tmp;php-capacity newcapacity;}php-a[php-sz] x;php-sz;//向上调整AdjustUp(php-a, php-sz - 1); } //删除 void HeapPop(HP* php) {assert(php);assert(!HeapEmpty(php));Swap(php-a[0], php-a[php-sz - 1]);php-sz--;//向下调整AdjustDown(php-a, php-sz,0); } //判断是否为空 bool HeapEmpty(HP* php) {assert(php);return php-sz 0; } //找堆顶元素 HPDataType HeapTop(HP* php) {assert(php);assert(!HeapEmpty(php));return php-a[0]; } //算个数 int HeapSize(HP* php) {assert(php);return php-sz; } 实现上述代码我们就可以实现堆排序了 二、堆排序的时间复杂度 我们都知道在实现堆时有向上排序和向下排序两种细心的人可能已经注意到我在实现上面那个堆排序用例时用的是向下排序原因就是向下排序的时间复杂度更低接下来我们就来分析一下这两种排序各自的时间复杂度 向下排序的时间复杂度 向上排序的时间复杂度 堆排序整体的时间复杂度 计算堆排序整体的时间复杂度就是计算上面这两步的时间复杂度 第一步 因为这一步实际上就是多次向下调整建堆所以这一步时间复杂度就是向下调整法时间复杂度的倍数那根据渐进表示法就可以表示为O(N-log(N)),因为当N很大时log(N)比N小很多,所以可以忽略表示为ON 第二步: 第二步外循环需要N次内循环看似每次都是一个完整的向下排序法但其实随着循环次数的增加里面向下排序的时间复杂度在不断减小因为堆尾排过去的数字实际上就不用再参与堆排序的所以这一步时间复杂度实际上是O(N*log) 因此堆排序的时间复杂度为ONN*logN 总结 堆排序及其时间复杂度的讲解就到此为止了如果有不理解的地方欢迎在评论区中指出或者与我私信交流欢迎各位大佬来访 创作不易还请各位大佬点赞支持

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

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

相关文章

曲靖网站建设网站建设辶金手指排名十三

我今天要讨论的功能是Java EE 6中的事件机制。一般的想法是触发一个事件,并让事件监听器来接收它。 我创建了这个完全没有用的示例,但是它的简单性帮助我专注于重要的内容。 我将从后备操作中触发LogEvent,该事件将记录到java.util.Logger中。…

现在做什么网站好wordpress内存高

在Android应用开发中经常要用各种控件&#xff0c;并为控件设置其背景颜色&#xff0c;使用各种不同的颜色为控件着色是很有必要的。 在Android系统中&#xff0c;各种颜色与其对应的码制如下所示&#xff1a; <resources> <color name"white">#ffffff…

俄语免费网站制作安徽六安房价

本文共514个字&#xff0c;预计用时2分钟小伙伴们&#xff0c;今天给大家分享一个小软件&#xff0c;名字叫做 EyeCareApp&#xff0c;中文名&#xff1a;护眼软件EyeCareApp是一款能够调节屏幕亮度的软件&#xff0c;它可以调整屏幕亮度&#xff0c;滤除蓝光&#xff0c;有效减…

在外国做玄幻小说网站手帐风格wordpress主题

原生应用&#xff1a;OpenAI™ChatGPT、Baidu.Inc™文心一言 也可以体验CSDN的INSCODE AI&#xff0c;集成多个国内GPT内容。 文章目录 前言----编程语言的未来&#xff1f;一、编程语言的教育1.1 学校所见所闻1.2 开启我们的Ai行程~io&#xff01;1.3 Ai结果评论 二、Ai编程教…

做网站模板用什么软件许昌市网站建设

编程思维&#xff0c;对于一个开发人员来说是必备的&#xff0c;但凡能让应用跑起来&#xff0c;不管应用的大小&#xff0c;优劣&#xff0c;说明这个开发人员都具有编程思维&#xff0c;毕竟程序认可了这个开发人员逻辑&#xff0c;能启动起来。小到几行代码&#xff0c;一个…

福永论坛网站建设百度关键词搜索指数

Linux系统编程&#xff08;八&#xff09;线程一、什么是线程&#xff1f;二、Linux内核线程实现原理线程共享资源线程非共享资源线程优缺点线程控制原语一、什么是线程&#xff1f; LWP&#xff1a;light weight process 轻量级的进程&#xff0c;本质仍是进程(在Linux环境下…

襄阳大型网站建设网站装修用什么软件做

目录 1 前言2 符号及作用&#xff1a;3 绘制清晰的ER图步骤4 实体关系图的用途5 使用场景6 实际应用场景举例7 结语 1 前言 当谈到数据库设计与分析的核心工具时&#xff0c;实体关系图&#xff08;ER图&#xff09;无疑是其中最重要的一环。在软件开发、信息管理以及数据库设…

长治网站制作的流程如何提高网站速度

Nginx服务器证书部署发布时间&#xff1a;2018-01-17 16:15:25依赖建议l SSL卸载驱动。建议&#xff1a;openssl版本1.1.0f。l nginx版本Stable version&#xff1a;最新稳定版&#xff0c;生产环境上建议使用的版本。获取证书MPKI方式&#xff1a;1. 登录https://mpki.tru…

个人网站建站指南网络工程是什么

项目任务&#xff1a;老师通过老师身份登录并查看博客园作业 1、背景&#xff1a; ①典型用户&#xff1a;老师 &#xff08;1&#xff09;名字&#xff1a;王老师 &#xff08;2&#xff09;年龄&#xff1a;27以上 &#xff08;3&#xff09;收入&#xff1a;5000以上 &#…

外贸soho建站多少钱荣耀手机官方旗舰店

运算符的优先级和结合性 优 先 级 运 算 符 含 义 运算对象个数 结合方向 1 () 圆括号 自左向右 [] 下标运算符 −> 指向结构体成员运算符 . 结构体成员运算符 2 ! 逻辑非运算 1&#xff08;单目&#xff09; 自右向左 &#xff5e; 按位取反…

网站开发音乐金寨县建设局网站

文章目录总览一. 诞生、概念和作用二. 分类三. 外中断的处理过程四. 导图总结总览 异常&#xff1a;内中断 一. 诞生、概念和作用 早期计算机&#xff0c;程序只能串行执行&#xff0c;资源利用率低&#xff08;详可见OS 发展分类&#xff09;&#xff0c;为了解决这一问题…

网站建设与网站设计wordpress臃肿吗

简介 在几天前的.NET 8发布会上&#xff0c;来自微软的Glenn Condron和David Fowler为我们演示了.NET Aspire&#xff0c;在Visual Studio的帮助下&#xff0c;它展现出了惊人的开发效率。 短短的十分钟内&#xff0c;David现场演示了如何轻松创建了一个具有服务发现&#xf…

网站动态和静态济南h5网站建设

PNP技术是由Microsoft提出的&#xff0c;英文Plug and play的缩写&#xff0c;中译即插即用&#xff0c;意思是系统自动侦测周边设备和板卡并自动安装设备驱动程序&#xff0c;做到插上就能用&#xff0c;无须人工干预&#xff0c;是Windows自带的一项技术。所谓即插即用是指将…

网页设计作业 个人网站合肥网站定制公司

在浏览器控制台执行以下代码,输入的结果是(A) A.4400 4401 4399 4400 B.4400 4401 4401 4402 C.4400 4400 4399 4400 D.4400 4401 4399 4402 E.4400 4401 4401 4400 解析 js在执行之前

博客导航wordpressseo技术交流

WinForms中的Timer探究&#xff1a;Form Timer与Thread Timer的差异 在Windows Forms&#xff08;WinForms&#xff09;应用程序开发中&#xff0c;定时器&#xff08;Timer&#xff09;是一个常用的组件&#xff0c;它允许我们执行定时任务&#xff0c;如界面更新、周期性数据…

上海大型网站制作公司网站建设长尾关键词

1.前言 spring cloud gateway的基本组成和作用就不细赘述&#xff0c;此篇适合对此有一定了解的人阅读。 spring cloud gateway版本: Hoxton.SR1 spring cloud gateway的配置使用yml配置&#xff1a; server:port: 9527y#根据微服务名称进行动态路由的配置 spring:applicati…

源码站友情链接是外链吗

#pragma 求助编辑 pragma - 必应词典美[prɡmə]英[prɡmə]n.〔计〕杂注网络编译指示&#xff1b;显示编译指示&#xff1b;特殊指令 百科名片 在所有的预处理指令中&#xff0c;#Pragma 指令可能是最复杂的了&#xff0c;它的作用是设定编译器的状态或者是指示编译器完成一些…

网站中的游戏是怎么做的手机更新wordpress

基于Springboot开发的JavaWeb作业查重系统[附源码] &#x1f345; 作者主页 央顺技术团队 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; &#x1f345; 文末获取源码联系方式 &#x1f4dd; &#x1f345; 查看下方微信号获取联系方式 承接各种定制系统 &a…

网站是怎样建立的流程是什么个人博客系统毕业设计论文

转载自 一次动态代理的填坑之旅 背景 想在现有的接口加上熔断降级或者限流的功能&#xff0c;比较好的方式是通过注解的方式&#xff0c;并基于动态代理进行实现&#xff0c;下面代码是Rhino的实现 Rhino public class ServiceImpl {Degrade(rhinoKey "syncMethod-0&…

手机怎么制作网站教程步骤微信公号嵌入网站开发

目录 1、获取桌面路径 法一&#xff1a;利用winshell库 法二&#xff1a;利用winreg库 2、获取系统盘符 3、获取电脑用户名 4、获取软件自启动存放目录 1、获取桌面路径 法一&#xff1a;利用winshell库 import winshell print(winshell.desktop()) 法二&#xff1a;利…