软软件设计师算法上午题概念笔记

news2025/2/25 7:34:30

N皇后问题

**走迷宫 **
在这里插入图片描述
以上q2不行 因为不能在同一行

在这里插入图片描述
这条路所有的都走不通所以需要回溯回溯至上一条路,把上一个皇后位置改变下
在这里插入图片描述
重新放皇后三
在这里插入图片描述
在这里插入图片描述
皇后四不能放所以回溯,发现皇后三也不能放
在这里插入图片描述
再往上回溯,发现2也不行那就回溯皇后1

总结:相邻的两个皇后至少隔一行或一列
在这里插入图片描述

处于同一条斜线上的两个皇后,行号之差的和列好之差的值是一样的
在这里插入图片描述

在这里插入图片描述

非递归求解N皇后问题

定义的数组加1是因为需要从1开始而不是0

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
先存入j是要对j检查然后下面代码是检查
判断代码

queen是初始化把期盼所有初始化为0表示都还没数据
在这里插入图片描述
在这里插入图片描述

递归求解n皇后问题

在这里插入图片描述
到了皇后3发现都不合法方法从栈里消失执行皇后2栈

在这里插入图片描述
在这里插入图片描述

回溯过去后继续执行上一个皇后的i++,q2跑到了4
在这里插入图片描述
在这里插入图片描述

分治法(递归实现)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

pr对映左右边界
**只有p<r的时候才需要分解 **


merge是最后的合并

在这里插入图片描述
求得是序列长度n1n2
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

分治法 最大子段和问题(时间复杂度)

在这里插入图片描述

那个符号的意思是k从i开始到j结束对ak求和
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

动态规划(分治法相似 )

分治法子问题独立说明子问题是不一样的

在这里插入图片描述

动态规划法是没计算一个子问题的解都会将其保存下来 等以后遇到相同的子问题直接调用解

在这里插入图片描述

01背包问题的01是物品要么装进去要么不装
在这里插入图片描述

01背包问题


在这里插入图片描述

分解子问题


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

求解01背包问题

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
每次j++一下
https://www.bilibili.com/video/BV1CS4y187Hk?p=15&spm_id_from=pageDriver&vd_source=6092f2dd634d869c97e5d08dde6f3844

背包问题代码实现

在这里插入图片描述

01背包问题空间复杂度(矩阵连乘时间复杂度)

在这里插入图片描述

在这里插入图片描述

a以深度优先去找解 找不到的话就回溯到上一级
在这里插入图片描述

加括号使得计算次数最少就是计算次序
在这里插入图片描述

贪心法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

部分背包问题求解(贪心法)(时间复杂度)

在这里插入图片描述

部分装入背包(0<=x<=1),但是是背包能承受的最大值,比如容量为9 装了8
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

部分背包问题代码实现

在这里插入图片描述


https://www.bilibili.com/video/BV1CS4y187Hk/?p=27&spm_id_from=pageDriver&vd_source=6092f2dd634d869c97e5d08dde6f3844

在这里插入图片描述

在这里插入图片描述

算法总合

动态规划法求全局最优解
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

网络安全工程师必须面对的三个坎必备十大基础知识!

前言 我一个朋友老赵&#xff0c;老赵在一家大型互联网公司做高级网络安全工程师&#xff0c;从实习生到工程师整整待了六年。去年他们公司为了缩减成本&#xff0c;做了裁员&#xff0c;他也在其中&#xff0c;取而代之的是一个只有三年工作经验的 “新人” … 老赵想着&…

小牟Andorid下面MD5具体实现的思路总结

Android的开发往往需要一定数目demo 从今起MD5一些加密算法提取物 看看是如何实现的 首先&#xff0c;我们必须明确为什么加密&#xff1f; 1 数据安全处理 2 防止数据窃取 3 有效的避免恶意攻击 4 保证文件完整性 5 优化搜索 作为文件&#xff08;数据&#xff09;索引…

【Java零基础入门篇】第 ⑦ 期 - 常用类库

博主&#xff1a;命运之光 专栏&#xff1a;Java零基础入门 学习目标 掌握Java各种常用类库的使用方法。 目录 Java类库 字符串String String 概述 创建字符串对象的2种方式 String类的特点 创建字符串对象的2种方式 总结&#xff1a;创建字符串对象的2种方式区别 字符…

【C++】类和对象(下篇)

C类和对象下篇 构造函数的一点补充构造函数体赋值初始化列表explicit关键字 Static成员概念特性 友元友元函数友元类 内部类概念特性 匿名对象拷贝对象时的一些编译器优化几道例题 构造函数的一点补充 构造函数体赋值 在创建对象时&#xff0c;编译器通过调用构造函数&#x…

股票量价关系基础知识2

内盘与外盘 外盘&#xff0c;是指在一个交易日获某段交易时间内&#xff0c;买方主动提价以委卖价成交的股数之和&#xff0c;也称为主动性买盘 内盘&#xff0c;是指在一个交易日获某段交易时间内&#xff0c;卖方主动降价以委买价成交的股数之和&#xff0c;也称主动性卖盘。…

flstudio20没有language选项,fl 21怎么也没有language选项

最新小伙伴们安装flstudio20没有language选项&#xff0c;是什么原因导致flstudio20没有language选项&#xff0c;兔八哥爱分享测试了&#xff0c;应该是flstudio20版本太低了&#xff0c;建议安装flstudio20.8以上版本&#xff0c;才可以flstudio20.8语言切换中文版。 flstud…

05- redis集群模式搭建(上) (包含云服务器[有坑])

目录 1. 准备环境: 2. 简介: -> 2.1 前言: -> 2.2 Redis集群架构实现了对redis的水平扩容 -> 2.3 redis cluster集群原理 3. 搭建后特别需要注意的问题 ->3.1 [重点]: 如果一个服务出现故障: 是否可以继续提供服务??? ---> 3.1.1 如果集群中故障re…

C++系列八:选择、循环与转向

选择、循环与转向 1. 选择语句2. 循环语句3. 转向语句4. 总结 1. 选择语句 选择语句使用条件来确定程序将执行哪些代码。在C编程中&#xff0c;选择语句有多种类型&#xff0c;包括if语句、switch语句和三元运算符。 &#xff08;1&#xff09;if语句 if语句是C编程中最常见…

Oracle EBS Interface/API(49)- AP付款取消API

快速参考 参考点内容功能导航N: AP->付款->录入->付款并发请求None基表AP.AP_CHECKS_ALLAPI参考下面介绍错误信息表None接口FormNone接口ReportNoneDebug ProfileNone详细例子参考如下实例官方文档None数据验证包None用户界面 Path:AP->付款->录入->付款-&g…

UNIX网络编程卷一 学习笔记 第十三章 守护进程和inetd超级服务器

守护进程是在后台运行且不与任何控制终端关联的进程。Unix系统通常有很多守护进程在后台运行&#xff08;约20到50个的量级&#xff09;&#xff0c;执行不同的管理任务。 守护进程由系统初始化脚本&#xff08;在开机时运行&#xff09;启动&#xff0c;而没有控制终端是系统…

华为交换机特殊场景使用mux vlan

场景主要用于&#xff1a; 设置两个vlan&#xff0c;每个vlan内的所有用户自动获取地址和能上外网&#xff0c;但是自个valn间用户都不能互相访问&#xff0c;每个用户又都可以 和其它vlan的用户通信。 官方版&#xff1a; 操作步骤 1.配置MUX VLAN 创建VLAN2、VLAN3和VLAN…

Python综合案例—利用tkinter实现计算器的程序

目录 一、导入 tkinter 库 定义全局变量 二、定义回调函数 三、创建窗口对象 四、创建标签控件 五、创建数字按钮 六、创建加、减、乘、除和等于按钮 七、创建清空按钮 八、总结 用Python实现计算器可以让我们更好地理解面向对象编程、GUI 编程和事件驱动编程等概念&a…

知识变现海哥:掌握这四个步骤,轻松实现知识变现

你是否有过这种感受&#xff0c;看了很多书&#xff0c;网上报课花了很多钱&#xff0c;课程屯了很多&#xff0c;可是依然很难变现&#xff0c;问题出在哪里呢&#xff1f; 海哥写这本《知识变现道法术器》将为你揭开答案。 海哥&#xff0c;国内知名知识变现创业教练&#x…

Java开发 - 不知道算不算详细的MySQL多维度性能优化剖析

前言 MySQL性能优化是一个很大的话题&#xff0c;小到一句SQL&#xff0c;大到一个系统&#xff0c;都是我们优化的目标&#xff0c;博主之前曾写过一篇关于SQL优化的博客&#xff0c;感兴趣的小伙伴直接点击即可。本篇&#xff0c;我们将从多个维度来讲解MYSQL性能优化相关的…

【Python】朴实无华的yolov5环境配置

前言 最近有一个项目需要用到目标识别&#xff0c;于是我一下子就想到了大名鼎鼎的yolo&#xff0c;于是花了一天时间了解了一下。但是很遗憾的是&#xff0c;我自己随便配置的一个环境能运行torch&#xff0c;但是只要一训练yolov5的库&#xff0c;电脑就要蓝屏&#xff0c; 随…

为什么是ChatGPT引发了AI浪潮?

目录 BERT和GPT简介 BERT和GPT核心差异 GPT的优势 GPT的劣势 总结 随着近期ChatGPT的火热&#xff0c;引发各行各业都开始讨论AI&#xff0c;以及AI可以如何应用到各个细分场景。为了不被时代“抛弃”&#xff0c;我也投入了相当的精力用于研究和探索。但在试验的过程中&…

FE_Vue学习笔记 插槽 slot

插槽分为匿名插槽、具名插槽、作用域插槽。子组件中&#xff1a; 匿名插槽只能有一个&#xff1b;可以有多个具名插槽&#xff1b;作用域插槽中可以有匿名插槽和具名插槽。 当项目中一个组件可以多次复用时&#xff0c;我们可以把这个组件封装成单独的.vue文件&#xff0c;从…

【UDS】ISO15765-2之网络时间参数

文章目录 简介分类1. N_As2. N_Ar3. N_Bs4. N_Br5. N_Cs5. N_Cr 总结 ->返回总目录<- 简介 网络层定时参数定义了N_As、N_Ar、N_Bs、N_Br、N_Cs、N_Cr六个参数。 这些时间参数在多帧传输中可以定义在下图的过程中 分类 1. N_As 方向&#xff1a; 发送方->接收方 …

听我一句劝,不要去外包,两年外包生涯做完,感觉自己废了一半....

先说一下自己的情况。大专生&#xff0c;17年通过校招进入湖南某软件公司&#xff0c;干了接近5年的点点点&#xff0c;今年年上旬&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落&#xff01;而我已经在一个企业干了五年的功能测试…

springmvc执行请求的顺序

当一个请求执行时&#xff0c;springMVC的DispatcherServlet&#xff08;前端控制器&#xff09; 会拦截到他&#xff0c;然后调用HandlerMapping &#xff08;处理器映射器&#xff09;&#xff0c;找到对应的URL地址&#xff0c;然后返回给前端控制器。前端控制器根据返回的U…