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

文章目录

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

前言

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

考试占比百分之五十,之前的课题占三十分,实验十五分,平时成绩五分。我感觉我课题给自己算二十五分,实验是 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.mzph.cn/news/886505.shtml

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

相关文章

Linux性能优化之火焰图的起源

Linux火焰图的起源与性能优化专家 Brendan Gregg 密切相关,他在 2011 年首次提出这一工具,用于解决性能分析过程中可视化和数据解读的难题。 1. 背景:性能优化的需求 在现代计算中,性能优化往往需要对程序执行中的热点和瓶颈进行…

【论文精读】GOT-OCR2.0源码论文——打破传统OCR流程的多模态视觉-语言大模型架构:预训练VitDet 视觉模型+ 阿里通义千问Qwen语言模型

作为本系列的开篇文章,首先定下本系列的整体基调。论文精读系列,旨在记录研读深度学习、强化学习相关论文的个人心得和理解,仅供参考,欢迎指正错误和研究探讨。 所有文章只会摘选论文部分进行分析,且不一定按原文行文顺…

使用 Qt 实现基于海康相机的图像采集和显示系统(不使用外部视觉库,如Halcon\OpenCv)[工程源码联系博主索要]

本文将梳理一个不借助外部视觉库(如 OpenCV/Halcon)的海康相机图像采集和显示 Demo。该程序直接使用 Qt GUI 来显示图像。通过海康 MVS SDK 实现相机的连接、参数设置、图像采集和异常处理等功能,并通过 Qt 界面展示操作结果。 1. 功能概述 …

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

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

C++——类和对象(part2)

前言 本篇博客继续为大家介绍类与对象的知识,承接part1的内容,本篇内容是类与对象的核心内容,稍微有些复杂,如果你对其感兴趣,请继续阅读,下面进入正文部分。 1. 类的默认成员函数 默认成员函数就是用户…

matlab实现主成分分析方法图像压缩和传输重建

原创 风一样的航哥 航哥小站 2024年11月12日 15:23 江苏 为了研究图像的渐进式传输技术,前文提到过小波变换,但是发现小波变换非常适合传输缩略图,实现渐进式传输每次传输的数据量不一样,这是因为每次变换之后低频成分大约是上一…

【HarmonyOS】鸿蒙系统在租房项目中的项目实战(二)

从今天开始,博主将开设一门新的专栏用来讲解市面上比较热门的技术 “鸿蒙开发”,对于刚接触这项技术的小伙伴在学习鸿蒙开发之前,有必要先了解一下鸿蒙,从你的角度来讲,你认为什么是鸿蒙呢?它出现的意义又是…

Scala-字符串(拼接、printf格式化输出等)-用法详解

Scala 一、 使用 号连接字符串 在 Scala 中, 运算符实际上会调用 String 类的 concat 方法或者使用字符串的加法操作,生成一个新的字符串。 字符串是不可变的,每次拼接都会创建一个新的字符串。 Mr. yuTips: 性能相对较差&…

ISCTF2024

ezlogin 源码审计 先审源码,纯js题 const express require(express); const app express(); const bodyParser require(body-parser); var cookieParser require(cookie-parser); var serialize require(node-serialize); app.use(bodyParser.urlencoded({ e…

使用真实 Elasticsearch 进行更快的集成测试

作者:来自 Elastic Piotr Przybyl 了解如何使用各种数据初始化和性能改进技术加快 Elasticsearch 的自动化集成测试速度。 在本系列的第 1 部分中,我们探讨了如何编写集成测试,让我们能够在真实的 Elasticsearch 环境中测试软件,并…

MySQL:联合查询(2)

首先写一个三个表的联合查询 查询所有同学的每门课成绩,及同学的个人信息 1.我们首先要确定使用哪些表 学生表,课程表,成绩表 2.取笛卡尔积 select * from score,student,course; 3. 确定表与表之间的联合条件 select * from score,stud…

Vue3学习笔记(下)

文章目录 Vue3学习笔记(下)组合式API下的父子通信父传子子传父 模板引用defineExpose()provide和injectvue3新特性 - defineOptionsvue3新特性 - defineModelPiniaPinia异步写法 Vue3学习笔记(下) 组合式API下的父子通信 父传子…

CNN神经网络

CNN 一 基本概述二 基础知识三 经典案例 今天和大家聊聊人工智能中的神经网络模型相关内容。神经网络内容庞大,篇幅有限本文主要讲述其中的CNN神经网络模型和一些基本的神经网络概念。 一 基本概述 深度学习(Deep Learning)特指基于深层神经网络模型和方法的机器学习。它是在…

MySQL —— MySQL基础概念与常用功能介绍

文章目录 基本概念数据类型数据类型分类 约束主键约束(PRIMARY KEY)外键约束(FOREIGN KEY)使用非空约束(not null)使用唯一性约束(UNIQUE)使用默认约束(DEFAULT&#xff…

如何在react中使用react-monaco-editor渲染出一个编辑器

一、效果展示 二、基于vite配置 1.首先安装react-monaco-editor和monaco-editor包 npm add react-monaco-editor npm i monaco-editor 2.其次创建一个单独的文件(此处是tsx、直接用app或者jsx也行) import { useState, useEffect } from react impo…

MySQL面试之底层架构与库表设计

华子目录 mysql的底层架构客户端连接服务端连接的本质,连接用完会立马丢弃吗解析器和优化器的作用sql执行前会发生什么客户端的连接池和服务端的连接池数据库的三范式 mysql的底层架构 客户端连接服务端 连接的本质,连接用完会立马丢弃吗 解析器和优化器…

【开源免费】基于Vue和SpringBoot的私人健身与教练预约管理系统(附论文)

本文项目编号 T 618 ,文末自助获取源码 \color{red}{T618,文末自助获取源码} T618,文末自助获取源码 随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息…

JVM--内存结构

目录 1. PC Register(程序计数器) 1.1 定义 1.2 工作原理 1.3 特点 1.4 应用 2.虚拟机栈 2.1定义与特性 2.2内存模型 2.3工作原理 2.4异常处理 2.5应用场景 2.6 Slot 复用 2.7 动态链接详解 1. 栈帧与动态链接 动态链接的作用&#xff1a…

手机直连卫星NTN通信初步研究

目录 1、手机直连卫星之序幕 2、卫星NTN及其网络架构 2.1 NTN 2.2 NTN网络架构 3、NTN的3GPP标准化进程 3.1 NTN需要适应的特性 3.2 NTN频段 3.3 NTN的3GPP标准化进程概况 3.4 NTN的3GPP标准化进程的详情 3.4.1 NR-NTN 3.4.1.1 NTN 的无线相关 SI/WI 3.4.1.2…

【SpringBoot】什么是Maven,以及如何配置国内源实现自动获取jar包

前言 🌟🌟本期讲解关于Maven的了解和如何进行国内源的配置~~~ 🌈感兴趣的小伙伴看一看小编主页:GGBondlctrl-CSDN博客 🔥 你的点赞就是小编不断更新的最大动力 &#x1f3…