网站设计主页怎么开发一个游戏

张小明 2026/1/13 7:07:55
网站设计主页,怎么开发一个游戏,成都易站网站建设,做网站需要固定ip么文章目录第一章 数据结构与算法基本概念1.1 数据结构定义1.2 算法定义1.3 递归与迭代1.3.1 迭代1.3.1 递归1 递归和迭代的思想比较2 调用栈3 尾递归4 递归树5 递归和迭代对比本文记录数据结构与算法的定义#xff0c;递归和迭代的定义和比较#xff0c;下一篇笔记介绍时间复杂…文章目录第一章 数据结构与算法基本概念1.1 数据结构定义1.2 算法定义1.3 递归与迭代1.3.1 迭代1.3.1 递归1 递归和迭代的思想比较2 调用栈3 尾递归4 递归树5 递归和迭代对比本文记录数据结构与算法的定义递归和迭代的定义和比较下一篇笔记介绍时间复杂度和字符编码。第一章 数据结构与算法基本概念1.1 数据结构定义数据结构相互之间存在一种或者多种特定关系的数据元素的集合。在逻辑上可以分为线性结构、散列结构、树形结构和图形结构等。1.2 算法定义算法 求解具体问题的步骤描述代码上表现出来是解决特定问题的一组有限的指令序列。1.3 递归与迭代这一节参考了《hello 算法》的第二章。1.3.1 迭代迭代iteration是一种重复执行某个任务的控制结构。在迭代中程序会在满足一定的条件下重复执行某段代码直到这个条件不再满足。下面以for循环为例求123…100的和。intforLoop(intn){intret0;// 循环求和for(inti1;in;i){reti;}returnret;}1.3.1 递归递归recursion是一种算法策略通过函数调用自身来解决问题。它主要包含两个阶段。递程序不断深入地调用自身通常传入更小或更简化的参数直到达到“终止条件”。归触发“终止条件”后程序从最深层的递归函数开始逐层返回汇聚每一层的结果。而从实现的角度看递归代码主要包含三个要素。终止条件用于决定什么时候由“递”转“归”。递归调用对应“递”函数调用自身通常输入更小或更简化的参数。返回结果对应“归”将当前递归层级的结果返回至上一层。比如下面代码intrecursum(intn){// 1 终止条件if(n1){return1;}// 2 递归调用intretrecursum(n-1)n;coutret retendl;//3 归返回结果returnret;}理解和总结每次递归都开辟一个栈帧开始递的过程然后当n1时结束递的过程开始归归的时候从递的下面一行开始运行比如上面代码中归时每次都执行下面代码程序运行结果/* ret3ret6ret10ret15*/1 递归和迭代的思想比较以123…100为例虽然递归和迭代都能求出这个问题但是这两种完全不同的思考和解决问题的范式。迭代“自下而上”地解决问题。从最基础的步骤开始然后不断重复或累加这些步骤直到任务完成。比如先求123然后再求34…这样的方法最后求出sum() 100.从小数一直累加的方法。递归“自上而下”地解决问题。先将远问题分解为更小的问题这些子问题和原问题有相同的形式。然后再将子问题分解为更小的子问题直到基本情况时停止。比如上面的求和代码中递的过程就是分解子问题() (−1)将100分解为99100, 9899的过程一直分解为12然后开始归。2 调用栈递归函数每次调用自身时系统都会为新开启的函数分配一个栈空间。而迭代只有一个栈空间因此递归比迭代更加消费内存空间。函数调用会产生额外的开销因此递归比循环效率更低。3 尾递归如果函数在返回前的最后一步才进行递归调用则函数可以被编译器优化使其在空间上与迭代相当这中情况称为尾递归。普通递归当函数返回到上一层级的函数后需要继续执行代码因此系统需要保存上一层调用的上下文。求和操作是在“归”的过程中执行的每层返回后都要再执行一次求和操作。尾递归递归调用是函数返回前的最后一个操作这意味着函数返回到上一层级后无须继续执行其他操作因此系统无须保存上一层函数的上下文。inttailRecursum(intn,intret){// 1 终止条件if(n0){returnret;}// 2 递归调用returntailRecursum(n-1,retn);}求和操作是在“递”的过程中执行的“归”的过程只需层层返回。4 递归树当处理与“分治”相关的算法问题时递归往往比迭代的思路更加直观、代码更加易读。以“斐波那契数列”为例。Question给定一个斐波那契数列 0, 1, 1, 2, 3, 5, 8, 13, … 求该数列的第 个数字。数列的前两个数字为 (1) 0 和 (2) 1 。数列中的每个数字是前两个数字的和即 () ( − 1) ( − 2) 。代码实现intfib(intn){// 终止条件if(n1||n2){returnn-1;}// 递归调用 f(n) f(n-1) f(n-2)intretfib(n-1)fib(n-2);returnret;}上面代码在函数内递归调用了两个函数这意味着从一个调用产生了两个调用分支这样的递归会产生一个递归树层数为n的递归树以5层为例子。递归体现了“将问题分解为更小子问题”的思维范式这种分支策略至关重要。5 递归和迭代对比为了理解递归过程使用栈来模拟递归的过程intforLoopRecursum(intn){// 1 终止条件stackints;intret0;// 模拟递的过程for(intin;i0;--i){s.push(i);}// 归的过程while(!s.empty()){rets.top();s.pop();}returnret;}
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

柬埔寨做网站网站深圳市工程交易中心网站

终极AI平台wgai:零门槛构建国产化智能识别系统 【免费下载链接】wgai 开箱即用的JAVAAI在线训练识别平台&OCR平台AI合集包含旦不仅限于(车牌识别、安全帽识别、抽烟识别、常用类物识别等) 图片和视频识别,可自主训练任意场景融合了AI图像识别opencv、…

张小明 2026/1/10 4:10:37 网站建设

网站备案app徐州建设工程交易中心

文章探讨了AI Agent如何改变程序员的工作方式,从"手搓"代码转变为"指挥"AI完成任务。作者指出AI接管了90%的编码工作,导致价值倒挂:执行力贬值,而想象力、同理心和审美升值。程序员角色转变为"机器的牧羊…

张小明 2026/1/10 23:09:38 网站建设

受欢迎的网站建设教程网络服务器配置与管理

攻击概况新型恶意软件PCPcat通过针对性利用Next.js和React框架中的关键漏洞,在48小时内成功入侵了超过5.9万台服务器。该恶意软件利用两个关键漏洞(CVE-2025-29927和CVE-2025-66478)攻击Next.js部署环境,这些漏洞允许未经身份验证…

张小明 2026/1/11 21:24:19 网站建设

如何做网站拓扑结构图360免费wifi旧版本下载

卷积与相关性:原理、计算与应用 在信号处理领域,卷积和相关性是两个非常重要的概念,它们在许多实际应用中都发挥着关键作用。本文将深入探讨循环相关性、卷积的计算方法以及它们的一些应用,并通过具体的例子进行详细说明。 1. 循环相关性 循环相关性在处理周期性序列时需…

张小明 2026/1/2 16:59:13 网站建设

深圳手机商城网站设计建设部证书查询官方网站

深入了解Windows PE:配置、启动与自动化安装指南 1. Windows PE基础信息与空间管理 32位Windows PE镜像大小约为120MB,自定义操作和添加语言会占用额外空间。不过通常有足够空间将Windows源文件复制到Windows PE CD,以实现更全面的自动化安装。若源文件和自定义PE无法同时…

张小明 2026/1/2 4:26:48 网站建设

教做月嫂的网站有吗大连城乡建设网站

目录已开发项目效果实现截图开发技术介绍核心代码参考示例1.建立用户稀疏矩阵,用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!已开发项目效果…

张小明 2026/1/1 21:16:25 网站建设