递归下降法是语法分析中最易懂的一种方法。
它的主要原理是,对每个非终极符按其产生式结构构造相应语法分析子程序,其中终极符产生匹配命令,而非终极符则产生过程调用命令。
因为文法递归相应子程序也递归,所以称这种方法为递归子程序下降法或递归下降法。
其中子程序的结构与产生式结构几乎是一致的。
本文将采用这种方法对赋值语句进行翻译,并得到逆波兰式的中间代码结果。
另外我还完成了对逆波兰式的中间代码翻译执行的程序。
1
算法分析基础——Fibonacci序列问题分治法在数值问题中的应用——最近点对问题减治法在组合问题中的应用——8枚硬币问题变治法在排序问题中的应用——堆排序问题动态规划法在图问题中的应用——全源最短路径问题3.实验要求(1)实现Floyd算法;
(2)算法的输入可以手动输入,也可以自动生成;
(3)算法不仅要输出从每个顶点到其他所有顶点之间的最短路径,还有输出最短路径的长度;
(4)设计一个权重为负的图或有向图的例子,对于它,Floyd算法不能输出正确的结果3.实验要求1)设计与实现堆排序算法;
2)待排序的数据可以手工输入(通常规模比较小,10个数据左右),用以检测程序的正确性;
也可以计算机随机生成(通常规模比较大,1500-3000个数据左右),用以检验(用计数法)堆排序算法的时间效率3.实验要求1)设计减治算法实现8枚硬币问题;
2)设计实验程序,考察用减治技术设计的算法是否高效;
3)扩展算法,使之能处理n枚硬币中有一枚假币的问题。
3.实验要求1)使用教材2.5节中介绍的迭代算法Fib(n),找出最大的n,使得第n个Fibonacci数不超过计算机所能表示的最大整数,并给出具体的执行时间;
2)对于要求1),使用教材2.5节中介绍的递归算法F(n)进行计算,同样给出具体的执行时间,并同1)的执行时间进行比较;
3)对于输入同样的非负整数n,比较上述两种算法基本操作的执行次数;
4)对1)中的迭代算法进行改进,使得改进后的迭代算法其空间复杂度为Θ(1);
5)设计可供用户选择算法的交互式菜单(放在相应的主菜单下)
1
利用八个方向的sobel边缘检测,其中为防止灰度值溢出对灰度值进行一个扩大和缩放的过程,可以检测出八个方向的灰度梯度值,检测出的边缘更加平缓连续,有兴趣的可以了解一下。
2025/9/26 22:19:13 64KB sobel 边缘检测 matlab
1
用jsp开发的一个订单系统,原型该系统的设计思想是胖客户端模式web前端采用jquery-ui+ajax实现,通过xml与后台进行互交。
该系统还包涵以后android客户端,未在该源码中。
2025/9/26 9:04:10 12.07MB java web jsp
1
springcloud分布式电商实战代码,并且对以下内容进行了详细笔记记录:maven聚合工程创建,消息总线,分库分表,全局异常处理,分布式session管理,ZK分布式锁,分布式ID生成,SKU概念和表设计,全文检索,缓存
2025/9/26 5:21:12 66KB springcloud
1
4.3设计一个一维的int数组类IntArray(属性:下标下限、下标上限、int型指针),可以任意指定下标范围(初始化时要判断下标是否正确),并重载下标访问运算符“[]”实现数组类的下标访问。
在主函数中(创建一个下标1-10的数组对象,初始化并输出)进行测试。
2025/9/25 19:21:14 600B C++
1
OWASPZedAttackProxy(ZAP)工具是世界上最受欢迎的免费安全工具之一。
ZAP可以帮助安全测试人员在开发和测试应用程序过程中,自动发现Web应用程序中的安全漏洞。
另外,它也是一款提供给具备丰富经验的渗透测试人员进行人工安全测试的优秀工具。
2025/9/25 18:43:42 111MB 渗透测试 安全测试 漏洞扫描
1
此为计算机图形学球的光照模型的课程设计,内有完整代码可直接运行,运行环境为VC6.0,本次课程设计通过构建MFC工程实现了操作界面的可视化,绘制了一个球体,并可通过菜单选项控制显示效果,进行光照模型、材质、光源位置等选择。
2025/9/25 17:37:14 3.57MB 球的光照模型
1
这款模拟器功能非常齐全,电话本、通话等功能都可正常使用(当然你没办法真的从这里打电话)。
甚至其内置的浏览器和GoogleMaps都可以联网。
用户可以使用键盘输入,鼠标点击模拟器按键输入,甚至还可以使用鼠标点击、拖动屏幕进行操纵。
2025/9/25 13:38:04 29.82MB Google 手机 模拟器 Android
1
对蚁群聚类算法进行了分类说明和列举,蚁群聚类的模型和实验结果,以及和其他聚类算法的比较优越性能。
最后还有对蚁群聚类前景的展望和总结。
2025/9/25 8:23:39 439KB 蚁群
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡