当前位置: 首页 > news >正文

【递归,搜索与回溯算法 综合练习】深入理解暴搜决策树:递归,搜索与回溯算法综合小专题(二)

  

 


优美的排列


    题目解析    



    算法原理    


    解法  :暴搜    


    决策树    


红色剪枝:用于剪去该节点的值在对应分支中,已经被使用的情况,可以定义一个 check[ ]


紫色剪枝:perm[i] 不能够被 i 整除,i 不能够被 perm[i] 整除,此时分支就要执行紫色剪枝


    设计函数    



    编写代码    



 N皇后


    题目解析    


本题的算法原理是比较简单的,难点在于剪枝操作和代码实现能力; 


    算法原理    


    解法:暴搜    


    决策树    


决策树的任务:给一个行数,每次枚举这一行的一个格子,枚举的格子看是否同列或者主副对角线是否有皇后,没有则在该格子放一个皇后,并停止枚举这一行剩下的格子,递归下一行; 

绿色剪枝:剪去遍历的格子所在列,出现其他皇后的情况;

紫色剪枝:剪去遍历的格子所在主副对角线,出现其他皇后的情况;

所以 N = 3,3皇后是没有合法的放置方法的 ;

当我们的行数为 N+1,说明已经枚举到了一种合法的结果;


    如何剪枝:考虑当前位置,能否放上皇后    


     策略一:无脑循环    


我们在遍历到一个格子的时候,使用四个循环判断当前格子所在行,列,左对角线,右对角线是否放有其他皇后,总体时间复杂度 O(N) = 4N * (2 ^N);虽然时间复杂度高,但是也是可以通过的

我们可以对这个方法进行优化,因为我们的决策树是每一行的其中一个格子用来放皇后,所以行是一定不会出现皇后攻击的情况的,所以只用看列,左对角线,右对角线是否放有其他皇后;


     策略二:类似哈希表的策略     


对于棋盘,我们分别定义两个 boolean 类型的数组 row[ ],col[ ] ,用于判断某一行或者某一列是否放置皇后;

 如果某个格子放置有皇后,对应的 row[ i ] ,col [ j ] 要置为 true ;后续再进行决策的时候,就可以先看看对应的 row,col 是否为 true,任意一个为 true 则不用再考虑本次枚举的格子;


接下来,我们来解决主对角线和副对角线的情况;

我们通过观察可以发现,当皇后要放置 N 个时,对应的主对角线和副对角线都是 2 * N - 1;

并且斜率分别是 1 和 -1,所以对于一条对角线,可以用y = x + b 或者 y = -x +b 来表示;

  • 对于主对角线,则有 y -  x = b ,纵坐标 + 横坐标为一个定值;
  • 对于副对角线,则有 x + y = b , 纵坐标 - 横坐标为一个定值;

所以我们再次定义两个 boolean 类型的数组 ,dig1,dig2 ,分别表示主对角线和副对角线;这两个数组的长度为 2*N ,用于存储所有的主对角线,或者副对角线;

用 b = y - x ,b = y + x 来表示某一条对角线的映射关系,当 dig1[ b ] == true || dig2 [ b ] == true,则说明该格子所在对角线放有其他皇后;


但是还有一个细节问题:

对于上图的主对角线,y - x  是一个负数,如果直接使用 dig1 [ b ] 会越界;

解决办法:添加上一个偏移量 n:y - x + n = b + n,让对角线统一向上移动 n 个单位,来处理截距为负数的情况;所以针对主对角线,我们判断的是 dig1[ b + n ] 是否是 true 即可;


    编写代码    


    前期初始化操作    



     主逻辑    



有效的数独


    题目解析    


本题并不是关于暴搜的题目,而是一个哈希表的题;我们通过讲解这道题的算法原理 ,为下一道题 解数独 做好铺垫


    算法原理    


    解法:暴搜    



 我们先来定义一个 boolean 类型的数组 row [  ] [  ]:

第一个 [ i ] 表示的是数独表中的第 i 行, 第二个 [ j ] 表示的是在这一行有没有出现 j 这个数字;

如:row [ 2 ][ 4 ] 表示的是第二行有没有出现 4 这个数字,有的话 row [ 2 ][ 4 ] == true;


col[ i ][ j ] 数组同理,表示的是第 i 列是否出现了 j 这个数字 ;


除了用数组来表示数度表外,我们也可以用哈希表来表示数独表,并且用哈希表非常巧妙:

我们是以一个3 x 3 的小数独表作为一个单位格子的,此时下标就只有 0,1,2;


我们设置一个 boolean 类型的数组 grid : 

grid [ 0 ][ 0 ] 表示左上角第一个 3x3 的大方格;


为了查看一个 3x3 的大方格所有数是否都出现过,我们再开一个空间给 grid: 


如何定义小方格和大方格下标的映射关系呢?

 当有一个元素的位置为 [ x , y ] ,映射的九宫格下标位置为 [ x/3 , y/3 ];


    编写代码    



解数独


    题目解析    



    算法原理    


    解法 : 暴搜   


    决策树    


上图代表决策树的某一条分支,我们可以发现,当按照其中一条分支填到第一行最后一个格子时,第一行每使用过的最后一个元素可能是不能填入该格子中的;


那我们怎么知道这条分支的选择不能填满数独表呢?在遍历某个 ' . ' 的格子时,如果所有数都不符合题意,我们返回 false 即可;

这个代码的报错原因,就是没有对【因为前面的选择,导致某一个格子 1 到 9 都不能填入】的情况进行处理;


所以如果遇到【某一个格子 1 到 9 都不能填入】的情况,我们就应该向上返回 false,因此,我们的 dfs 应该设置 boolean 类型的返回值,告诉上一层,这种选法是否可以得到正确的数独,如果返回 false,我们就要让上一层的格子尝试下一个数;

dfs 的参数其实可以直接把 board 数组传入即可;在 dfs 中遍历 board ,专门处理 board[ i ][ j ] == '.'  的情况;


    编写代码    


    初始化     



    填数逻辑     



    攻克难点     


本题难点就是要想到 dfs 是 boolean 类型,并且要找到 dfs 中合适的位置进行返回;


    对这三处 return 的解读    




单词搜索


    题目解析    



    算法原理    


    解法 :深度优先遍历   


    模拟过程    


我们以下面这个矩阵和 word 为例子来模拟过程: 


刚开始,会先遍历矩阵中所有的元素,直到找到word 的第一个字符 ' A '


此时会对当前 A 的格子上下左右进行扫描,直到找到 B:


对于当前位置的 A ,上下左右位置并没有 B ,说明这个 A 不是我们要找的 A ,我们寻找下一个 A:


此时,我们发现当前 A 的位置右边和下方都有 B ,就需要递归这两种情况:

下方的 B 上下左右查找,并没有找到 C,我们遍历右边的 B 


此时的情况和上面同理: 


最终得到结果,返回 true: 

如果按照上面的模拟过程,矩阵找不到 word ,则返回 false; 


    决策树    



    函数设计     



    细节问题一:如何避免走重复路径    


    问题描述     



    模拟过程    



     解决方法一: 设置一个 boolean 数组    


定义一个跟原始矩阵相同规模的 boolean 数组 :

用 visit 来标记当前位置,下次遍历到某一个位置时,通过 visit 查看这个位置是否已经被使用过;


     解决方法二: 修改原始矩阵的值     


当我们对某一个格子进行上下左右查找,查找到下一个字符时,把这个位置修改成 ' . ' 

面试的时候要问问面试官可不可以修改原始矩阵,修改原始矩阵的行为不保险;


    细节问题二:用向量数组映射  ( i , j ) 位置的上下左右坐标     


设置两个一维数组 dx[ 4 ] , dy [ 4 ] : 


dx[ i ] 和 dy [ i ] 要能映射到同一个方向,映射关系如下:

我们使用一个 for 循环,就可以一个坐标的上下左右关系全部找到;如果要找 8 个方向,我们就定义两个长度为 8 的数组,来表示 8 个不同的方向;这种方法在二维数组表示方向的时候,是非常好用的;


    编写代码    


    准备工作    


在主函数中,先遍历一次矩阵,找到第一个 word[ 0 ] ,然后调用 dfs,从第一个 word[ 0 ] 所在位置开始找 word 剩下的元素;


    主逻辑     



    代码细节详解     






 模拟上述对 return  会遇到的情况 :


黄金矿工


    题目解析    



    算法原理    


本题的算法原理和上一题是一类题型,解法大差不差,只是一些细节问题不同;这一题先尝试自己编写代码,再根据老师的视频改进;


    解法:暴搜     



    编写代码    



    编写历程    





那么,我们什么时候在主函数更新结果呢?如果要设置递归出口,就要再写一层 for 循环,判断上下左右的 vis ==true || grid == 0,对于这道题是没有必要设置递归出口的;


只需要找到一轮递归的最大值 tmp 即可,并且更新 ret 即可;所以我们一进入 dfs 就更新 ret


    总结     

关于更新结果的问题是难点:尤其是在哪里更新结果?这么更新结果有什么用?为什么要这样更新结果?


每次作出一题,都要想清楚这几个问题,并且学会新的处理细节问题的方式,如:

  • 二维矩阵搜索路径时,避免走重复路径的方法;
  • 使用向量坐标表示一个格子不同的方向;

不同路径Ⅲ


    题目解析    




    算法原理    


    解法 :暴搜   



    编写代码    



    优化    


减少循环次数: 


    继续优化    


我们可以对递归出口进行优化,原来是只有合法路径才 return ,现在是只要走到终点就 return: 


总结 


关于暴搜的题目,算法原理其实并不难,重点考察的就是我们的代码能力,以及能否发现细节问题,并且对细节问题进行合理的处理; 


 

 

相关文章:

【递归,搜索与回溯算法 综合练习】深入理解暴搜决策树:递归,搜索与回溯算法综合小专题(二)

优美的排列 题目解析 算法原理 解法 :暴搜 决策树 红色剪枝:用于剪去该节点的值在对应分支中,已经被使用的情况,可以定义一个 check[ ] 紫色剪枝:perm[i] 不能够被 i 整除,i 不能够被 per…...

Perl语言的语法

Perl语言概述及其应用 引言 Perl语言是一种通用的高级编程语言,由拉里沃尔(Larry Wall)于1987年首次发布。Perl语言的设计目标是简化文本处理和报告生成,同时也提供了强大的功能以用于系统管理、网络编程、数据库交互等多种场景…...

ELK+filebeat+kafka

ELKfilebeatkafka elkelk的架构数据流向ELK的部署 filebeatzookeeperkafkazopkeeprzookeeper的工作机制zookeeper的特点zookeeper的数据架构zookeeper的安装 kafka消息队列消息队列的应用场景消息队列的模式kafka组件的名称 elk elk的架构 elk:统一日志收集系统 …...

WPF系列九:图形控件EllipseGeometry

简介 EllipseGeometry用于绘制一个椭圆的形状。它通常与其他图形元素结合使用,比如 Path 或者作为剪切区域来定义其他元素的外形。 定义椭圆:EllipseGeometry 用来定义一个椭圆或者圆的几何形状。参与绘制:可以被用作 Path 元素的数据&…...

2025新年源码免费送

2025很开门很开门的源码免费传递。不需要馒头就能获取4套大开门源码。 听泉偷宝,又进来偷我源码啦👊👊👊。欢迎偷源码 🔥🔥🔥 获取免费源码以及更多源码,可以私信联系我 我们常常…...

离线录制激光雷达数据进行建图

目前有一个2D激光雷达,自己控制小车运行一段时间,离线获取到激光雷达数据后运行如下代码进行离线建图。 roslaunch cartographer_ros demo_revo_lds.launch bag_filename:/home/firefly/AutoCar/data/rplidar_s2/2025-01-08-02-08-33.bag实际效果如下 d…...

Scala分布式语言二(基础功能搭建、面向对象基础、面向对象高级、异常、集合)

章节3基础功能搭建 46.函数作为值三 package cn . itbaizhan . chapter03 // 函数作为值,函数也是个对象 object FunctionToTypeValue { def main ( args : Array [ String ]): Unit { //Student stu new Student() /*val a ()>{"GTJin"…...

AI中的神经元与权重矩阵之间的关系;神经元连接角度看行和列的意义

AI中的神经元与权重矩阵之间的关系 目录 AI中的神经元与权重矩阵之间的关系神经元连接角度看行和列的意义AI中的神经元概念 在人工智能领域,特别是神经网络中,神经元是基本的计算单元,它是对生物神经元的一种抽象模拟。就像生物神经元接收来自其他神经元的电信号,经过处理后…...

前端中常用的单位度量(px,rpx,rem,em,vw,vh)+图片自适应

文章目录 前端中常用的单位度量vw/vh 的场景应用px/rem/em 之间的转换关系项目中的rem 应用根元素 font-size 设置为16px 的应用惯例自适应之图片应用1. 使用 max-width 和 max-height2. 使用 object-fit 属性3. 使用 background-image 模拟图片展示 前端中常用的单位度量 px&…...

Attention计算中的各个矩阵的维度都是如何一步步变化的?

在Transformer模型中,各个矩阵的维度变化是一个关键的过程,涉及到输入、编码器、解码器和输出等多个阶段。以下是详细的维度变化过程: 输入阶段 输入序列:假设输入序列的长度为seq_len,每个单词或标记通过词嵌入&…...

Golang学习笔记_23——error补充

Golang学习笔记_20——error Golang学习笔记_21——Reader Golang学习笔记_22——Reader示例 文章目录 error补充1. 基本错误处理2. 自定义错误3. 错误类型判断3.1 类型断言3.2 类型选择 4. panic && recover 源码 error补充 1. 基本错误处理 在Go中,函数…...

DB-Engines Ranking 2025年1月数据库排行

DB-Engines Ranking 2025年1月数据库排行 DB-Engines排名根据数据库管理系统的受欢迎程度进行排名。排名每月更新一次。 2025年1月,共有423个数据库进入排行。 排行榜 Oracle Oracle 连续三月稳居榜首,排名稳定。2025 年 1 月分数较上月增 5.03&#x…...

积分与签到设计

积分 在交互系统中,可以通过看视频、发评论、点赞、签到等操作获取积分,获取的积分又可以参与排行榜、兑换优惠券等,提高用户使用系统的积极性,实现引流。这些功能在很多项目中都很常见,关于功能的实现我的思路如下。 …...

用 Python 绘制可爱的招财猫

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​​​​​ ​​​​​​​​​ ​​​​ 招财猫,也被称为“幸运猫”,是一种象征财富和好运的吉祥物,经常…...

用 HTML5 Canvas 和 JavaScript 实现炫酷跨年烟花特效

一、引言 跨年夜,五彩斑斓、绚丽绽放的烟花是最令人期待的视觉盛宴之一。在网页端,我们能否通过技术手段复现这一梦幻场景呢?答案是肯定的。本文将深入剖析一段使用 HTML5 Canvas 和 JavaScript 实现的跨年烟花特效源码,带你领略前端技术创造的惊艳画面。 用 HTML5 Canvas…...

什么是数据湖?大数据架构的未来趋势

💖 欢迎来到我的博客! 非常高兴能在这里与您相遇。在这里,您不仅能获得有趣的技术分享,还能感受到轻松愉快的氛围。无论您是编程新手,还是资深开发者,都能在这里找到属于您的知识宝藏,学习和成长…...

Spring boot接入xxl-job

Spring boot接入xxl-job 导入maven包加入配置增加配置类创建执行器类&#xff08;写job的业务逻辑&#xff09;去控制台中配置job 导入maven包 <dependency><groupId>com.xuxueli</groupId><artifactId>xxl-job-core</artifactId><version>…...

Flutter pubspec.yaml 使用方式

Flutter pubspec.yaml 使用方式 pubspec.yaml 是 Flutter 项目中最重要的配置文件之一&#xff0c;用于管理应用的基本信息、依赖项、资源以及构建配置等内容。 1. 基本结构和字段 基本信息 name: my_flutter_app # 应用的名称 description: A new Flutter project …...

Elixir语言的学习路线

Elixir语言的学习路线 Elixir是一种动态、通用的编程语言&#xff0c;特别适合用于构建可扩展和维护性强的应用程序。它基于Erlang虚拟机&#xff08;BEAM&#xff09;&#xff0c;因其高并发性和容错能力而广受欢迎。近年来&#xff0c;Elixir在Web开发&#xff08;特别是与P…...

看不懂scatter、gather的来

1.torch.scatter 这是out-of-place版本&#xff08;相对于in-place版本&#xff09;&#xff0c;它会返回一个新的张量。 torch.Tensor.scatter_ 就是in-place版本&#xff0c;它直接修改自身&#xff0c;返回的也是自身 Tensor.scatter_(dim, index, src, *, reduceNone) →…...

系统思考—问题分析

爱因斯坦说过&#xff1a;“如果我有1小时拯救世界&#xff0c;我会花55分钟去确认问题为何&#xff0c;只用5分钟寻找解决方案。” 这个看似简单的道理&#xff0c;却蕴藏着解决复杂问题的智慧。真正的问题&#xff0c;往往隐藏在现象的背后。解决问题的关键&#xff0c;不在…...

【C】编译与链接

在本文章里面&#xff0c;我们讲会讲解C语言程序是如何从我们写的代码一步步变成计算机可以执行的二进制指令&#xff0c;并最终执行的。C语言程序运行主要包括两大步骤 -- 编译和链接&#xff0c;接下来我们就来一一讲解。 目录 1 翻译环境和运行环境 2 翻译环境 1&#…...

如何用Python编程实现自动整理XML发票文件

传统手工整理发票耗时费力且易出错&#xff0c;而 XML 格式发票因其结构化、标准化的特点&#xff0c;为实现发票的自动化整理与保存提供了可能。本文将详细探讨用python来编程实现对 XML 格式的发票进行自动整理。 一、XML 格式发票的特点 结构化数据&#xff1a;XML 格式发票…...

深入探索OceanBase分布式数据库理论:开启数据管理新篇章

《深入探索OceanBase分布式数据库理论&#xff1a;开启数据管理新篇章》 在当今数字化转型风起云涌的时代&#xff0c;数据已然成为企业最为宝贵的资产之一。随着数据量呈爆炸式增长、业务场景愈发复杂多元&#xff0c;传统的集中式数据库在应对高并发、海量数据存储与处理时逐…...

如何用VS调试不属于解决方案的EXE和DLL程序-使用PDB和EXE文件-根据exe|pdb|源码文件进行调试分析

文章目录 1.问题2.基本点3.方法步骤3.1.新建一个空的解决方案3.2.构建源码项目3.3.添加pdb文件目录3.4.调试目标exe 4.源码断点 1.问题 如果你手里有一个现成的EXE, 以及EXE相关联PDB文件, 还有相关联的CPP文件和H文件. 你如何用VS调试? (当然你可以选择WinDbg.不过这里就讨论…...

2. CSS的元素显示模式

2.1什么是元素显示模式 作用&#xff1a;网页的标签非常多&#xff0c;在不同地方会用到不同类型的标签&#xff0c;了解他们的额特点可以更好的布局我们的网页。 元素显示模式就是元素&#xff08;标签&#xff09;以什么方式进行显示&#xff0c;比如<div>自己占一行…...

marktext 开源markdown安装

https://github.com/marktext/marktext 该 markdown 的免费安装&#xff0c; 在mac os 上 安装时&#xff0c; 出现无法安装的情况 使用如下的命令可以&#xff0c; 可以进行使用 https://github.com/marktext/marktext/issues/2983 This isn’t the recommended command si…...

/src/utils/request.ts:axios 请求封装,适用于需要统一处理请求和响应的场景

文章目录 数据结构解释1. 核心功能2. 代码结构分析请求拦截器响应拦截器 3. 改进建议4. 总结 console.log(Intercepted Response:, JSON.stringify(response));{"data": {"code": 0,"msg": "成功","data": {"id":…...

蓝桥杯 第十五届 研究生组 B题 召唤数学精灵

问题描述&#xff1a; 数学家们发现了两种用于召唤强大的数学精灵的仪式&#xff0c;这两种仪式分别被称为累加法仪式 A(n) 和累乘法仪式 B(n)。累加法仪式 A(n) 是将从 1 到 n 的所有数字进行累加求和&#xff0c;即&#xff1a;A(n)12⋯n累乘法仪式 B(n) 则是将从 1 到 n 的所…...

四种编译方式(make、cmake、configure、autogen.sh)

文章目录 一、make特征编译步骤(make)样例编译二、cmake特征编译步骤(cmake --> make)样例编译三、configure特征编译步骤(./configure --> make)样例编译四、autogen.sh特征编译步骤(./autogen.sh --> ./configure --> make)样例编译总结一、make 特征 …...

Cursor 实战技巧:好用的提示词插件Cursor Rules

你好啊&#xff0c;见字如面。感谢阅读&#xff0c;期待我们下一次的相遇。 最近在小红书发现了有人分享这款Cursor提示词的插件&#xff0c;下面给各位分享下使用教程。简单来说Cursor Rules就是可以为每一个我们自己的项目去配置一个系统级别的提示词&#xff0c;这样在我们…...

mysql事务及隔离机制

mysql总结 mysql事务特性&#xff1a; 原子性&#xff08;Atomicity&#xff09;一致性&#xff08;Consistency&#xff09;隔离性&#xff08;Isolation&#xff09;持久性&#xff08;Durability&#xff09; 并发访问数据库造成的问题&#xff1a; 脏读&#xff1a;读到…...

《护网行动与数字时代:如何应对日益复杂的网络威胁?》

什么是护网 1.什么是护网行动 护网行动是由公安部牵头组织的网络安全攻防演练活动&#xff0c;旨在评估和提升企事业单位的网络安全防护能力。 具体来说&#xff0c;护网行动通过模拟真实的网络攻击场景&#xff0c;组织攻防双方进行对抗演练&#xff0c;以检测企事业单位网…...

1月9日星期四今日早报简报微语报早读

1月9日星期四&#xff0c;农历腊月初十&#xff0c;早报#微语早读。 1、上海排查47家“俄罗斯商品馆”&#xff1a;个别店铺被责令停业&#xff0c;立案调查&#xff1b; 2、西藏定日县已转移受灾群众4.65万人&#xff0c;检测到余震646次&#xff1b; 3、国家发改委&#x…...

科大讯飞前端面试题及参考答案 (下)

除了 echarts 还了解其它画图工具吗? 除了 Echarts,还有不少优秀的画图工具可供选择使用。 Highcharts:它是一款功能强大且应用广泛的图表绘制工具,支持多种常见的图表类型,像柱状图、折线图、饼图、散点图等,同时也能创建较为复杂的图表,比如仪表盘图表、极坐标图等。H…...

linux创建服务,实现程序异常退出自启

以启动java程序进行示例,其他程序也可按照该方式进行配置 [Unit] DescriptionMy Java Service Afternetwork.target[Service] WorkingDirectory/opt/myapp # 设置你的 jar 文件所在目录 ExecStart/usr/bin/java -jar myapp.jar # 替换为你的 jar 启动命令 Restartalways Re…...

linux-28 文本管理(一)文本查看,cat,tac,more,less,head,tail

之前提到过linux的几个重要哲学思想&#xff0c;使用纯文本文件保存软件的配置信息是其中之一&#xff0c;所以大多数情况下&#xff0c;我们对整个系统的操作&#xff0c;都是通过编辑它的配置文件来完成&#xff0c;那也就意味着&#xff0c;处理文本文件是我们作为系统管理员…...

Springboot3巧妙运用拦截器阻断xss攻击

Springboot3巧妙运用拦截器阻断xss攻击 什么是xss跨站脚本攻击类型简单示例解决方法拦截器代码使用demo 什么是xss 人们经常将跨站脚本攻击&#xff08;Cross Site Scripting&#xff09;缩写为CSS&#xff0c;但这会与层叠样式表&#xff08;Cascading Style Sheets&#xff…...

leetcode 2551. 将珠子放入背包中

题目如下 数据范围 示例 题目的意思是将一个长度为n的数组weight(简称w)分成k个小数组,同时计算这些小数组的边界和。 设i (0 < i < n - 1) 首先我们假设已经找到最大分数序列即划分的小数组最优 令 j1,j2,j3.....jk为这些小数组的左端点(不包括第一个小数组)。 则有…...

【Spring】SpringBoot整合ShardingSphere并实现多线程分批插入10000条数据(进行分库分表操作)。

??个人主页&#xff1a;哈__ 期待您的关注 目录 一、ShardingSphere简介 ?1.Sharding-JDBC 2.Sharding-Proxy? 3.Sharding-Sidecar&#xff08;TBD&#xff09;? 二、为什么用到ShardingSphere? 三、数据分片 四、SpringBoot整合ShardingSphere 1.创建我们的数据…...

Python中的ast.literal_eval:安全地解析字符串为Python对象

Python中的ast.literal_eval&#xff1a;安全地解析字符串为Python对象 什么是ast.literal_eval&#xff1f;为什么说它是“安全”的&#xff1f; 如何使用ast.literal_eval&#xff1f;示例1&#xff1a;将字符串转换为列表示例2&#xff1a;将字符串转换为字典示例3&#xff…...

前端用json-server来Mock后端返回的数据处理

<html><body><div class"login-container"><h2>登录</h2><div class"login-form"><div class"form-group"><input type"text" id"username" placeholder"请输入用户名&q…...

【linux】文件与目录命令 - mv

文章目录 1. 基本用法2. 常用参数3. 用法举例4. 注意事项 mv 命令用于移动或重命名文件和目录&#xff0c;是 Linux 系统中管理文件的重要工具之一。它既能移动文件到指定路径&#xff0c;也能重命名文件或目录。 1. 基本用法 语法&#xff1a; mv [选项] 源文件 目标文件 mv…...

OSPF - LSA对照表

LSA的三要素&#xff0c;如何唯一表示一条LSA  Type&#xff1a;表示是几类的LSA  Link-id&#xff1a;这个比较特殊&#xff0c;不同的LSA的Link-ID不同  Advertising router&#xff1a;谁产生的LSA 常用的就是1、2、3、4、5、7型LSA 点击蓝字跳转LSA详细介绍(持续更新中…...

Mongodb基础sqL

------------------------------------------数据库------------------------------ (2).查看所有数据库 show dbs (3).选择数据库&#xff0c;如果不存在则隐式创建这个数据库 use 数据库名 ------------------------------------------集合------------------------------ …...

uniapp开发u-icon图标不显示问题

uniapp开发图标用u-icon不显示&#xff0c;换成uv-icon就可以了 插件市场从这里下载&#xff1a;uv-ui 破釜沉舟之兼容vue32、app、h5、小程序等多端&#xff0c;灵活导入&#xff0c;利剑出击 - DCloud 插件市场 组件库看这个&#xff1a;介绍 | 我的资料管理-uv-ui 是全面兼…...

宁德时代2025年Verify入职测评语言理解及数字推理真题SHL题库汇总、考情分析

宁德时代社招Verify入职测评对薪酬有着重要影响&#xff0c;其规定正确率达到80%才能顺利通过测评。这体现了公司对人才专业素养与能力的严格要求&#xff0c;旨在筛选出真正符合岗位需求的优秀人才。测评内容涵盖了专业知识、技能运用、逻辑思维等多方面&#xff0c;只有综合能…...

Spring Data Elasticsearch简介

一、Spring Data Elasticsearch简介 1 SpringData ElasticSearch简介 Elasticsearch是一个实时的分布式搜索和分析引擎。它底层封装了Lucene框架,可以提供分布式多用户的全文搜索服务。 Spring Data ElasticSearch是SpringData技术对ElasticSearch原生API封装之后的产物,它通…...

即插即用,无缝集成各种模型,港科大蚂蚁等发布Edicho:图像编辑一致性最新成果!

文章链接&#xff1a;https://arxiv.org/pdf/2412.21079 项目链接&#xff1a;https://ezioby.github.io/edicho/ 亮点直击 显式对应性引导一致性编辑&#xff1a;通过将显式图像对应性融入扩散模型的去噪过程&#xff0c;改进自注意力机制与分类器自由引导&#xff08;CFG&…...

鸿蒙开发(29)弹性布局 (Flex)

概述 弹性布局&#xff08;Flex&#xff09;提供更加有效的方式对容器中的子元素进行排列、对齐和分配剩余空间。常用于页面头部导航栏的均匀分布、页面框架的搭建、多行数据的排列等。 容器默认存在主轴与交叉轴&#xff0c;子元素默认沿主轴排列&#xff0c;子元素在主轴方…...