湘潭大学软件工程算法设计与分析考试复习笔记(一)

news2024/11/18 18:12:34

文章目录

  • 前言
  • 随机类(第七章)
    • 随机
      • 概述
      • 数值随机化
      • 舍伍德
      • 拉斯维加斯
      • 蒙特卡罗
    • 模拟退火
    • 遗传
    • 人工神经网络
  • 回溯(第五章)
  • 动态规划(第四章)
  • 后记

前言

在这里插入图片描述
考试还剩十一天,现在准备开始复习这门课了。好像全是大题。

考试占比百分之五十,之前的课题占三十分,实验十五分,平时成绩五分。我感觉我课题给自己算二十五分,实验是 87*0.15=13 分,平时我都去上课了,没缺勤,算五分,这儿有四十三分了。所以这门课应该还是很容易过的。这次我的目标是想稍微考高点儿。

我记得之前在 csdn 上面看到过之前的回忆的期末题,但是不记得关键字是啥了,之后要是找到了会贴在评论区。有时候有些东西确实没记录或者收藏下来,真就找不到了,“记住什么,这辈子就有什么”,哈哈哈。

第一个题型是对算法的理解。随机类算法,回溯算法,动态规划算法,背后的原理和数学机理,数学机理我感觉是被生造的词哈哈哈。十分。今天就先复习这个题型。

感觉还是优先看课件吧,教材太学术,太新了,我喜欢旧一点的东西,那些时间给我带来确认和归属感。太新的东西给我一种不安全感。

回溯和动态规划好说,课件第四章和第五章是专门讲这两个算法的。随机类算法是啥呢?

查了一下,就是第七章的概率算法,包括随机算法,遗传算法,模拟退火算法,人工神经网络。模拟退火算法之前做过一次实验,虽然是直接理解这个源代码的。湘潭大学软件工程算法设计与分析实验-模拟退火算法

随机类(第七章)

在这里复习第一个题型,主要是复习基本的原理,那么应该能大概知道就行了。什么时间复杂度,空间复杂度,具体的代码实现,这个题型应该都不用管。当然在复习这个的时候把这些全弄清楚肯定好一些,就是太累了一点。

每个小节一二十页课件,其实还好。

想起来有个朋友说,他准备把学习通上面的网课全部看一遍,非常谨慎,我在考虑我要不要也看一遍,但是我看一遍可能也没啥用,可能看不懂,纠结。

随机

概述

随机算法可能以较小的概率出错,我感觉差不多了,感觉大概率正确在很多场景下都够用了,只有一些不容出错的场景不太适用,比如说什么导弹发射,医院电力控制(不能断电,断电了呼吸机啥的医疗仪器不能用了,出问题了就)

小概率事件在我的生活中发生的确实挺少的,比如买彩票七个数字我一般一个数字都不中。

概述只是一个大概的了解,应该不会考。

数值随机化

线性同余算法的公式是这样的
在这里插入图片描述
哈哈会不会就是考这个,之前数据结构就是考第一个函数二分函数,估计是想把难度降低一些。算法考试会不会刻意把难度降低一些呢?

具体的代码我暂时不看,主要是看不懂。

用这种面积或者求积分算面积,然后尝试足够多次,要是印象没出错的话,这应该就是几何概型求概率,算面积的比值就好了。比较简单。

再后面的好像是古典概型。好像不是,是抽取随机数字,但是这个随机数字之前不能被抽到过。
在这里插入图片描述

这里是说从 n 个元素里面抽取 m 个元素,我理解的没错的话,m 比较大,超过所有元素的一半的时候就把一些元素直接舍弃掉,也就是不一个一个抽取,舍弃掉之后直接全选。

彻底理解位运算——左移、右移:简单来说就是,左移就是乘,右移就是除,2 的某次方。这个我用的比较少,差点忘了。每次写代码的时候担心写错,我每次都是直接写除以 2 ,而不是写 >>1 ,我还是太谨慎了。这里的代码感觉就是用了一个生成随机数函数,其他的都比较直观。

舍伍德

在这里插入图片描述
课件里面这块应该是说 O(n^2) ,应该是格式问题没有正确显示。

好像不看代码完全理解不了算法的意思。前面的数值随机化可能也还要看代码重新理解一下。

消除最坏情形行为和特定实例之间的关联性,这句话不知道是啥意思。xtu oj 聚会:这里代码前面有一个快速排序模板,我没看明白这快速排序和舍伍德之间的关系是啥。

后面的也看不懂。

拉斯维加斯

拉斯维加斯算法有可能找不到解,所以使用倔强算法,我感觉就是用一种方法做不到一件事情的时候,再坚持坚持,倔强倔强。还不行可能就真不行了哈哈。

倔强算法就是只要没有找到需要的解,就一直用原来的算法继续寻找。

拉斯维加斯解决 n 后问题比较暴力,感觉比较难找到需要的解,太随机了。直接生成答案,我感觉难度就相当于在键盘上随便敲,没有逻辑地敲出世界名著的几百万字的这种难度。

回忆一下什么是 n 后问题,就是每一行,每一列,每条斜线都只能有一个皇后。

蒙特卡罗

建议读者主要还是看课件复习,看我的博客还是图一乐,该博客主要是一个陪伴作用,让读者知道有人也在努力地准备这个期末考试。因为博客里面会加入一些我的个人理解,然后会损失一些课件里面的重要信息。

所以就是所有的随机算法调用的次数越多,重复的次数越多,效果越好。

偏真算法:我感觉就是,假设我和朋友在核对一次测试的答案,我和朋友说这个题的答案我很确定是这个,那这个答案基本就是这个,假设我说不确定这个答案是这个,那么这个题答案可能是我写的答案,也可能不是这个,也就是课件里面的“有可能产生错误的解”。关键在于我能不能正确判断自己对答案的掌握程度。

主元素就是一个数组里面出现次数超过一半的元素。随机算法比顺序算法更好的一点就是有可能更快找到答案。顺序找可能要全部遍历一遍才能找到答案。随机算法可能一次就找到答案了。

后面的都看不懂,应该是废了。

下面的内容明天继续复习。

模拟退火

遗传

人工神经网络

回溯(第五章)

动态规划(第四章)

后记

这个我会每天更新,一直到 26 号晚上 22:00, 每天 22:00 更新一篇,记录自己这一天的复习过程哈哈哈。最后使尽全力还是 60 出头,70 出头就有点无奈了。哎。

今天复习的内容有点少了,感觉把课件完整看一遍都是问题了。还要做人机交互实验,争取下周五把人机交互实验做完。

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

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

相关文章

如何使用正则表达式验证域名

下面是一篇关于如何使用正则表达式验证域名的教程。 如何使用正则表达式验证域名 简介 域名是互联网上网站的地址,每个域名由多个标签(label)组成,标签之间用点 . 分隔。域名规则有很多细节,但基本要求是&#xff1a…

【Cesium】自定义材质,添加带有方向的滚动路线

【Cesium】自定义材质,添加带有方向的滚动路线 🍖 前言🎶一、实现过程✨二、代码展示🏀三、运行结果🏆四、知识点提示 🍖 前言 【Cesium】自定义材质,添加带有方向的滚动路线 🎶一、…

DDoS高防服务器:保障业务安全和稳定的抗攻击利器

摘要 随着网络攻击愈发频繁,尤其是DDoS(分布式拒绝服务)攻击的威胁不断增长,DDoS高防服务器成为保护企业网络安全的重要工具。本文将详细介绍DDoS高防服务器的原理、优势、应用场景及选择要点,帮助企业有效应对攻击&am…

vim配置 --> 在创建的普通用户下

在目录/etc/ 下面,有个名为vimrc 的文件,这是系统中公共的vim配置文件对所有用户都有效 我们现在创建一个普通用户 dm 创建好以后,我们退出重新链接 再切换到普通用户下 再输入密码(是不显示的,输入完后,…

Python 正则表达式使用指南

Python 正则表达式使用指南 正则表达式(Regular Expression, 简称 regex)是处理字符串和文本的强大工具。它使用特定的语法定义一组规则,通过这些规则可以对文本进行匹配、查找、替换等操作。Python 提供了 re 模块,使得正则表达…

Golang | Leetcode Golang题解之第565题数组嵌套

题目&#xff1a; 题解&#xff1a; func arrayNesting(nums []int) (ans int) {n : len(nums)for i : range nums {cnt : 0for nums[i] < n {i, nums[i] nums[i], ncnt}if cnt > ans {ans cnt}}return }

微服务day10-Redis面试篇

Redis主从 搭建主从集群 建立集群时主节点会生成同一的replicationID,交给各个从节点。 集群中的缓冲区是一个环型数组&#xff0c;即若从节点宕机时间过长&#xff0c;可能导致命令被覆盖。 主从集群优化 哨兵原理 哨兵是一个集群来确保哨兵不出现问题。 服务状态监控 选举…

排序算法 -快速排序

文章目录 1. 快速排序&#xff08;Quick Sort&#xff09;1.1、 简介1.2、 快速排序的步骤 2. Hoare 版本2.1、 基本思路1. 分区&#xff08;Partition&#xff09;2. 基准选择&#xff08;Pivot Selection&#xff09;3. 递归排序&#xff08;Recursive Sorting&#xff09; 2…

01、Spring MVC入门程序

概述&#xff1a; MVC(M&#xff1a;模型、V&#xff1a;视图、 C&#xff1a;控制器) 三层架构&#xff1a; 表现层&#xff08;Web层&#xff09;业务层&#xff08;Service层&#xff09;负责业务逻辑处理持久层&#xff08;Dao层&#xff09;负责和数据库交互 Spring MVC 作…

7.揭秘C语言输入输出内幕:printf与scanf的深度剖析

揭秘C语言输入输出内幕&#xff1a;printf与scanf的深度剖析 C语言往期系列文章目录 往期回顾&#xff1a; VS 2022 社区版C语言的安装教程&#xff0c;不要再卡在下载0B/s啦C语言入门&#xff1a;解锁基础概念&#xff0c;动手实现首个C程序C语言概念之旅&#xff1a;解锁关…

Android Osmdroid + 天地图 (一)

Osmdroid 天地图 前言正文一、配置build.gradle二、配置AndroidManifest.xml三、获取天地图的API Key① 获取开发版SHA1② 获取发布版SHA1 四、请求权限五、显示地图六、源码 前言 Osmdroid是一款完全开源的地图基本操作SDK&#xff0c;我们可以通过这个SDK去加一些地图API&am…

️️一篇快速上手 AJAX 异步前后端交互

AJAX 1. AJAX1.1 AJAX 简介1.2 AJAX 优缺点1.3 AJAX 前后端准备1.4 AJAX 请求基本操作1.5 AJAX 发送 POST 请求1.6 设置请求头1.7 响应 JSON 数据1.8 AJAX 请求超时与网络异常处理1.9 取消请求1.10 Fetch 发送 Ajax 请求 2. jQuery-Ajax2.1 jQuery 发送 Ajax 请求&#xff08;G…

2024年11月16日 星期六 重新整理Go技术

今日格言 坚持每天进步一点点~ 一个人也可以是一个团队~ 学习全栈开发, 做自己喜欢的产品~~ 简介 大家好, 我是张大鹏, 今天是2024年11月16日星期六, 很高兴在这里给大家分享技术. 今天又是休息的一天, 做了很多的思考, 整理了自己掌握的技术, 比如Java, Python, Golang,…

炼码LintCode--数据库题库(级别:简单;数量:55道)--刷题笔记_02

目录 炼码LintCode--数据库题库&#xff08;级别&#xff1a;简单&#xff1b;数量&#xff1a;55道&#xff09;--刷题笔记_023618 耗时前三的任务&#xff08;日期差&#xff09;题&#xff1a;sql&#xff1a;解释&#xff1a;DATEDIFF 天数差order by 别名TIMESTAMPDIFF 月…

洛谷刷题日记||基础篇8

#include <iostream> #include <vector> using namespace std;int N, M; // N为行数&#xff0c;M为列数 vector<vector<char>> field; // 表示田地的网格&#xff0c;每个元素是W或. vector<vector<bool>> visited; // 用来记录网格是否访…

在Ubuntu22.04上源码构建ROS noetic环境

Ubuntu22.04上源码构建ROS noetic 起因准备环境创建工作目录并下载源码安装编译依赖包安装ros_comm和rosconsole包的两个补丁并修改pluginlib包的CMakeLists的编译器版本编译安装ROS noetic和ros_test验证 起因 最近在研究VINS-Mono从ROS移植到ROS2&#xff0c;发现在编写feat…

从dos上传shell脚本文件到Linux、麒麟执行报错“/bin/bash^M:解释器错误:没有那个文件或目录”

[rootkylin tmp]#./online_update_wars-1.3.0.sh ba51:./online_update_wars-1.3.0.sh:/bin/bash^M:解释器错误:没有那个文件或目录 使用scp命令上传文件到麒麟系统&#xff0c;执行shell脚本时报错 “/bin/bash^M:解释器错误:没有那个文件或目录” 解决方法&#xff1a; 执行…

react+hook+vite项目使用eletron打包成桌面应用+可以热更新

使用Hooks-Admin的架构 Hooks-Admin: &#x1f680;&#x1f680;&#x1f680; Hooks Admin&#xff0c;基于 React18、React-Router V6、React-Hooks、Redux、TypeScript、Vite2、Ant-Design 开源的一套后台管理框架。https://gitee.com/HalseySpicy/Hooks-Adminexe桌面应用…

华东师范大学数学分析第五版PDF习题答案上册及下册

“数学分析”是数学专业最重要的一门基础课程&#xff0c;也是报考数学类专业硕士研究生的专业考试科目。为了帮助、指导广大读者学好这门课程&#xff0c;编者编写了与华东师范大学数学科学学院主编的《数学分析》(第五版)配套的辅导用书&#xff0c;以帮助读者加深对基本概念…

FineBI漏斗图分析转化率计算,需要获取当前节点和上一节点的转化率,需要获取错行值实现方案

FineBI漏斗图分析转化率计算&#xff0c;当前节点和上一节点的转化率&#xff0c;需要获取错行值 下面这张图大家很熟悉吧&#xff0c;非常经典的漏斗转化率分析。 从漏斗图看到需要计算转化率&#xff0c;都需要获取上一步漏斗的值&#xff0c;比如计算上一个省份的门店数量…