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

华为开发岗暑期实习笔试(2025年4月16日)

刷题小记:

第一题怀疑测试样例不完整,贪心法不应该能够解决该题。第二题使用0-1BFS解决单源最短路径的问题,往往搭配双端队列实现。第三题是运用动态规划解决最大不重叠子区间个数的问题,难点在于满足3重判断规则,所需数据结构及相关操作较多。

1.最小测试用例集覆盖

题目分析:

题目描述:

二维cases表示测试用例的覆盖情况,cases[i][j]为 1 表示第i个测试用例覆盖了第j个模块,为 0 则表示未覆盖。

求一个最小的测试用例集合,使得该集合能够覆盖所有模块。

返回该最小的集合大小,如果不存在这样的集合,返回-1。

输入描述:

第一行给定两个整数,分别表示用例总数n和代码模块总数m

第二行开始的n行,每行有m个整数(0或1),表示覆盖情况。

n,m均属于[1,50]区间

输出描述:

输出一个整数表示最小用例集合的大小,若不存在则输出-1

解题思路:

当且仅当 存在j,对任意的i,均有cases[i][j] == 0时,不存在最小覆盖集合,此时返回-1。

第i行表示第i个测试用例对m个模块的覆盖情况,

用一个长度为m的数组mo记录样例集合对模块的覆盖情况,其值为每一列由各样例的对应列取并得到。

如果采用回溯法(暴力搜索),那么遍历全部覆盖集的时间复杂度为O(2^n),而检查数组mo的时间复杂度为O(n),那么总的时间复杂度为O(n * 2^n),太大!

如果采用贪心法,每次选择覆盖模块最多的测试样例添入集合,仍然无法保证测试样例集合最小。(据说真实考试情况下,该贪心法过了?!)

2.小慕的地铁大挑战

题目分析:

题目描述:

有N条地铁线路,每条线路按顺序连接若干站点,且一条线路上不存在重复的站点名。

地铁乘坐规则如下:进入任意一条地铁线路需支付2元,每换乘一次加收1元。

现求小慕从某个出发站前往指定的目的站,规划一条最省钱的路线并返回最低票价;若不能抵达,输出"NA"。

输入描述:

第一行一个整数N表示地铁线路数量,介于[1,1000]。

接下来N行,每行描述一条地铁线路,用空格分隔若干个站点名(站点名长度不超过100个字符),最多包含100个站点。不同线路间站点名可能重复,表示是换乘站。

第N+1行包含两个站点名,分别是出发站和目的站。

输入保证:若存在可达路径,则方案唯一。

输出描述:

第一行输出“换乘路径”(除起始点外,只包含可能存在的换乘站点),站点之间用"-"连接。

第二行输出该方案的总票价。

若无可达路径,只输出一行"NA"

解题思路:

运用0-1广度优先搜索遍历所有路径,找出权值最小的路径,其中:在线路内部移动的边权为0,换乘时的边权为1。

关键步骤:
  1. 构建状态图:key是(站点名,所属线路编号),value是(下一站点,权重)的列表,其中用"虚拟线路编号-1"表示换乘口
    1. 对于同一条地铁线路的相邻站点(A,i)和(B,i)相连,即给(A,i)的value列表添加((B,i),0),给(B,i)的value列表添加((A,i),0)
    2. 对于每个站点,将其与对应的虚拟换乘口相连
      1. 从站点(A,i)到虚拟换乘口(A,-1)的权为1,即给(A,i)的value列表添加((A,-1),1)
      2. 从虚拟换乘口(A,-1)到站点(A,i)的权为0,即给(A,-1)的value列表添加((A,i),0)
  1. 路径搜索算法 0-1BFS:
    1. 使用双端队列Deque,优先处理权值为0的边,即将其加入队头(优先出队);处理权值为1的边时,将其加入队尾(后出队),已访问过的节点直接跳过
    2. 用一个映射d记录每个节点的最小费用,初始化为INT_MAX
    3. 用一个映射pre记录每个节点的前置节点,以便第一次找到终点后复现路径(权值为0的节点被优先处理,广度优先搜索能确保找到目标点时路径代价最小)
  1. 路径还原与票价计算:
    1. 找到终点时,借助pre映射还原路径,每遇到(node, -1)的节点表示为换乘节点,将其添加入路径并记录换乘代价
    2. 票价 = 2 + 换乘代价 - 1,因为(起点, -1)被视作了换乘节点加入路径,而其本身是不需要换乘的,只是为了统一写法才记为-1,因此票价公式末尾减去1
  1. 如果最终最短路径映射d不包含终点,表示不存在能够从起点到达该终点的路径,输出NA。

3.满足尽可能多的业务需求的IP区间方案组

题目分析:

题目描述:

业务的网络地址需求用一个闭区间[startip, endip]表示。

由于要求不同业务的IP地址区间不能重叠,要求按照一定的顺序将这些业务需求排序,尽可能满足更多的业务需求:

  • 当业务数量相同时,以IP地址占用区间最少的优先
  • 当业务数量相同时且IP地址占用区间大小也相同时,按照IP范围排序,比较起始地址,起始地址最小者优先。
输入描述:

第一行为业务个数N,有效范围是[1, 1000]

接下来N行是IP地址区间,每行有startip和endip,均为合法的IPv4地址格式,即(A, B, C, D),其中ABCD的取值范围是[0, 255]

注意:IP地址大小的比较,是按照A、B、C和D的顺序进行比较。

输出描述:

输出排序好的M个IP区间,每行一个。

解题思路:

首先将IP地址转换成32位的整数进行存储,便于比较大小。

然后将这些IP区间按照startip进行升序排序,若startip相同,那么按照endip进行升序排序,得到32位转换以及排序后的N行2列的整型数组ips。

动规五部曲:
  1. 确定dp数组以及下标的含义:dp[i]表示以第i个区间结尾的最大不重叠子区间数量
  2. 确定递推公式:对于以j(j < i)为结尾的最大不重叠子区间方案,如果与第i个区间不重叠,那么:
    1. 如果dp[j] + 1> dp[i],那么以第i个区间为结尾的方案为在以第j个区间为结尾的最大不重叠区间数方案的基础上加上第i个区间;
    2. 如果dp[j] + 1 == dp[i],那么比较以第i个区间为结尾的最优方案,以及以第j个区间为结尾的最优方案的基础上添加第i个区间,比较这两个方案的长度,选择较短者;如果两个方案的长度相同,比较两个方案的起始IP地址。
  1. 确定遍历方向:由于dp[i]依赖于dp[j](j < i),因此正序遍历即可。
  2. dp数组初始化:遍历第i个区间时,由于一定以第i个区间结尾,因此初始化dp[i] = 1表示将第i个区间添入业务组合方案。
import java.util.*;public class Ipv4ToIntConverter {public static int ipv4ToInt(String ipAddress) {String[] parts = ipAddress.split("\\.");int result = 0;for (int i = 0; i < 4; i++) {int octet = Integer.parseInt(parts[i]);result = (result << 8) | octet;}return result;}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();scanner.nextLine(); // 消耗掉换行符int[][] ips = new int[n][2];for (int i = 0; i < n; i++) {String[] line = scanner.nextLine().split(" ");ips[i][0] = ipv4ToInt(line[0]);ips[i][1] = ipv4ToInt(line[1]);}// 按照 startip 升序排序,如果 startip 相同,按照 endip 升序排序Arrays.sort(ips, (a, b) -> {if (a[0] == b[0]) {return Integer.compare(a[1], b[1]);}return Integer.compare(a[0], b[0]);});// dp[i] 表示以第 i 个区间结尾的最大不重叠区间数量int[] dp = new int[n];// 记录每个状态下选择的区间List<List<int[]>> choices = new ArrayList<>();// 记录每个状态下选择的区间的总长度int[] lengths = new int[n];for (int i = 0; i < n; i++) {dp[i] = 1;choices.add(new ArrayList<>());choices.get(i).add(ips[i]);lengths[i] = ips[i][1] - ips[i][0];for (int j = 0; j < i; j++) {if (ips[j][1] < ips[i][0]) {// 第i个区间与第j个区间不重合if (dp[j] + 1 > dp[i]) {dp[i] = dp[j] + 1;List<int[]> newChoice = new ArrayList<>(choices.get(j));newChoice.add(ips[i]);choices.set(i, newChoice);lengths[i] = lengths[j] + (ips[i][1] - ips[i][0]);} else if (dp[j] + 1 == dp[i]) {int newLength = lengths[j] + (ips[i][1] - ips[i][0]);if (newLength < lengths[i]) {List<int[]> newChoice = new ArrayList<>(choices.get(j));newChoice.add(ips[i]);choices.set(i, newChoice);lengths[i] = newLength;} else if (newLength == lengths[i]) {if (newChoice.get(0)[0] < choices.get(i).get(0)[0]) {List<int[]> newChoice = new ArrayList<>(choices.get(j));newChoice.add(ips[i]);choices.set(i, newChoice);}}}}}}// 找到最大不重叠区间数量的方案int maxCount = 0;List<int[]> bestChoice = new ArrayList<>();int minLength = Integer.MAX_VALUE;int startIp = Integer.MAX_VALUE;for (int i = 0; i < n; i++) {if (dp[i] > maxCount) {maxCount = dp[i];bestChoice = choices.get(i);minLength = lengths[i];startIp = bestChoice.get(0)[0];} else if (dp[i] == maxCount) {if (lengths[i] < minLength) {bestChoice = choices.get(i);minLength = lengths[i];startIp = bestChoice.get(0)[0];} else if (lengths[i] == minLength) {if (choices.get(i).get(0)[0] < startIp) {bestChoice = choices.get(i);startIp = bestChoice.get(0)[0];}}}}// 输出结果for (int[] ip : bestChoice) {System.out.println(intToIpv4(ip[0]) + " " + intToIpv4(ip[1]));}scanner.close();}public static String intToIpv4(int ip) {StringBuilder sb = new StringBuilder();for (int i = 3; i >= 0; i--) {sb.append((ip >> (i * 8)) & 255);if (i > 0) {sb.append(".");}}return sb.toString();}
}

相关文章:

华为开发岗暑期实习笔试(2025年4月16日)

刷题小记&#xff1a; 第一题怀疑测试样例不完整&#xff0c;贪心法不应该能够解决该题。第二题使用0-1BFS解决单源最短路径的问题&#xff0c;往往搭配双端队列实现。第三题是运用动态规划解决最大不重叠子区间个数的问题&#xff0c;难点在于满足3重判断规则&#xff0c;所需…...

第一篇:Django简介

第一篇&#xff1a;Django简介 文章目录 第一篇&#xff1a;Django简介一、纯手写一个简易版的web框架1、软件开发架构2、HTTP协议3、简易的socket服务端4、wsgiref模块5、动静态网页6、后端获取当前时间展示到html页面上7、字典数据传给html文件8、数据从数据库中获取的展示到…...

2025年渗透测试面试题总结-拷打题库13(题目+回答)

网络安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 2025年渗透测试面试题总结-拷打题库13 一、GitHub等三方敏感信息泄漏防御 二、业务逻辑漏洞技术规避 …...

(09)Vue脚手架的使用(Vite、vue-cli、create-vue)

本系列教程目录&#xff1a;Vue3Element Plus全套学习笔记-目录大纲 文章目录 第3章 Vue脚手架3.1 vite3.3.1 Vite使用1&#xff09;创建Vite项目2&#xff09;Vite项目打包 3.1.2 组件化开发3.1.4 Vite工程运行原理1&#xff09;分析main.js2&#xff09;自定义根组件 3.2 vue…...

Unity 将Excel表格中的数据导入到Mysql数据表中

1.Mysql数据表users如下&#xff1a; 2.即将导入的Excel表格如下&#xff1a; 3.代码如下&#xff1a; using System; using System.Data; using System.IO; using Excel; using MySql.Data.MySqlClient; using UnityEngine; using UnityEditor;public class ImportExcel {// …...

【QT】信号与槽中多个按钮(pushbutton)共用一个槽函数的两种实现方式

两种方法的对比 方法1&#xff1a;sender() 优点&#xff1a;代码简洁&#xff0c;无需额外参数 缺点&#xff1a;依赖运行时类型转换&#xff0c;安全性较低 适用场景&#xff1a;简单场景&#xff0c;少量按钮 方法2&#xff1a;Lambda (推荐) 优点&#xff1a;安全直观&…...

Python----深度学习(神经网络的过拟合解决方案)

一、正则化 1.1、正则化 正则化是一种用于控制模型复杂度的技术。它通过在损失函数中添加额外的项&#xff08;正则 化项&#xff09;来降低模型的复杂度&#xff0c;以防止过拟合。 在机器学习中&#xff0c;模型的目标是在训练数据上获得较好的拟合效果。然而&#xff0c;过…...

【金仓数据库征文】从 HTAP 到 AI 加速,KingbaseES 的未来之路

国产数据库早已实现 “可替代”&#xff0c;但要真正与国际头部厂商掰手腕&#xff0c;必须在 HTAP&#xff08;Hybrid‑Transaction/Analytical Processing&#xff09;与 AI 加速 两条技术赛道上实现跨越。KingbaseES 自 V8R3 调整为多进程架构后&#xff0c;历经 V8R6、KSOn…...

创建第一个Spring Boot项目

什么是Spring Boot 随着Spring的快速发展&#xff0c;项目中的XML文件越来越多&#xff0c;繁琐的配置以及&#xff0c;整合第三方框架的配置问题&#xff0c;导致大大增加了开发和部署的效率&#xff0c;使开发者无法专心于业务的开发。Spring Boot就相当于使Spring框架的脚手…...

Java—— 正则表达式 练习

需求&#xff1a; 请编写正则表达式验证用户输入的手机号码是否满足要求。 请编写正则表达式验证用户输入的邮箱号是否满足要求。 请编写正则表达式验证用户输入的电话号码是否满足要求。 验证手机号码 13112345678 13712345667 13945679027 139456790271 验证座机电话号码 02…...

Linux[指令与权限]

Linux指令与权限 Linux环境中,打包文件有多种 tar (打包/解包) 指令 tar -czvf 文件要打包到的位置 文件(打包并压缩到) tar -xzvf 文件(在当前目录下解压) tar选项 -c创建压缩文件 -z使用gzip属性压缩 -v展现压缩过程 -f后面使用新建文档名 -x不要新建,解压 -C 文件…...

MySQL数据库精研之旅第十期:打造高效联合查询的实战宝典

专栏&#xff1a;MySQL数据库成长记 个人主页&#xff1a;手握风云 目录 一、简介 1.1. 为什么要使用联合查询 1.2. 多表联合查询时的计算 1.3. 示例 二、内连接 2.1. 语法 2.2. 示例 三、外连接 4.1. 语法 4.2. 示例 一、简介 1.1. 为什么要使用联合查询 一次查询需…...

【Redis】集合类型Set 常用命令详解

1. sadd - 添加 语法&#xff1a;sadd key value > sadd testset A 1 > sadd testset B 1 > sadd testset C 1 > sadd testset C # set的值不能重复 0 > smembers set1 # 查询指定set的所有值&#xff0c;乱序 1) "B" 2) "A" 3) "C&qu…...

React 5 种组件提取思路与实践

在开发时,经常遇到一些高度重复但略有差异的 UI 模式,此时我们当然会把组件提取出去,但是组件提取的方式有很多,怎么根据不同场景选取合适的方式呢?尤其时在复杂的业务场景中,组件提取的思路影响着着代码的可维护性、可读性以及扩展性。本文将以一个[详情]组件为例,探讨…...

第十五届蓝桥杯 2024 C/C++组 合法密码

目录 题目&#xff1a; 题目描述&#xff1a; 题目链接&#xff1a; 思路&#xff1a; substr函数&#xff1a; 思路详解&#xff1a; 代码&#xff1a; 代码详解; 题目&#xff1a; 题目描述&#xff1a; 题目链接&#xff1a; P10906 [蓝桥杯 2024 国 B] 合法密码 -…...

云原生时代的双轮驱动

在当今数字化浪潮汹涌澎湃的时代&#xff0c;企业 IT 主管、CIO、CTO 们肩负着引领企业乘风破浪、实现数字化转型的重任。而主数据平台与数据中台&#xff0c;宛如企业数字化征程中的双引擎&#xff0c;为企业发展注入强劲动力。 一、主数据与数据中台&#xff1a;企业数据世界…...

GD32F407单片机开发入门(六)定时器TIMER详解及实战含源码

文章目录 一.概要二.通用定时器内部结构1.时基单元2.时钟源3.输入捕获4.输出比较 三.通用定时器内部特色四.TIME定时器1ms中断例程五.工程源代码下载六.小结 一.概要 定时器就是计数器&#xff0c;应用在我们生活的方方面面&#xff0c;比如有闹钟、计时器等。在GD32F407VET6定…...

时序数据库 TDengine 助力石油石化业务, 平滑接替 Oracle 数据库

小T导读&#xff1a;胜软科技在石油石化行业中选择使用 TDengine 处理时序数据&#xff0c;不仅显著降低了运维数据库的成本&#xff0c;也大幅减少了存储空间的占用&#xff0c;实现了从原有的 40 多套 Oracle 数据库向仅 9 套 TDengine集群的精简替换。在迁移过程中&#xff…...

【问题解决】本机navicat连接云服务器mysql

一般情况下&#xff0c;当你使用navicat等工具连接云服务器会因为mysql的安全机制&#xff0c;导致无法连接root用户&#xff0c;但是在测试环境中&#xff0c;不考虑安全性的前提条件下&#xff0c;可以通过修改MySQL的配置文件来连接云服务器mysql的root用户。 选择数据库&am…...

STM32F407 的通用定时器与串口配置深度解析

在 STM32F407 芯片的开发过程中&#xff0c;通用定时器和串口的配置与使用是极为关键的技能点。本文将结合提供的代码示例&#xff0c;深入剖析这两个模块的配置流程、工作原理以及实际应用&#xff0c;助力开发者更好地掌握相关技术。 一、通用定时器 &#xff08;一&#x…...

深入探究Linux项目自动化构建工具:make与Makefile

目录 引言 一、make与Makefile概述 1.1 背景 1.2 理解 二、make工作原理 2.1 查找Makefile 2.2 确定目标文件 2.3 处理文件依赖 三、Makefile实例分析 3.1 简单C程序示例 3.2 项目清理机制 四、结合行缓冲区概念的有趣现象 五、结语 引言 在Linux软件开发的世界里…...

【Hive入门】Hive基础操作与SQL语法:DDL操作全面指南

目录 1 Hive DDL操作概述 2 数据库操作全流程 2.1 创建数据库 2.2 查看数据库 2.3 使用数据库 2.4 修改数据库 2.5 删除数据库 3 表操作全流程 3.1 创建表 3.2 查看表信息 3.3 修改表 3.4 删除表 4 分区与分桶操作 4.1 分区操作流程 4.2 分桶操作 5 最佳实践与…...

STM32F103 “BluePill” 上的 DMA 原理与实践

摘要:本文深入浅出地介绍什么是 DMA(直接存储器访问),它的核心原理、硬件架构,以及在 STM32F103(BluePill)上常见的几种使用场景(ADC、UART、内存拷贝等)。通过对比 CPU 轮询、中断、DMA 三种方式的数据搬运效率,结合寄存器级和 HAL 库示例代码,并附带性能测试与优化…...

软考软件设计师30天备考指南

文章目录 一、考情分析&#xff08;一&#xff09;综合知识&#xff08;二&#xff09;案例分析 二、30天学习规划&#xff08;一&#xff09;第1 - 5天&#xff1a;基础夯实&#xff08;二&#xff09;第6 - 10天&#xff1a;核心知识突破&#xff08;三&#xff09;第11 - 15…...

比较:AWS VPC peering与 AWS Transit Gateway

简述: VPC 对等连接和 Transit Gateway 用于连接多个 VPC。VPC 对等连接提供全网状架构,而 Transit Gateway 提供中心辐射型架构。Transit Gateway 提供大规模 VPC 连接,并简化了 VPC 间通信管理,相比 VPC 对等连接,支持大量 VPC 的 VPC 间通信管理。 VPC 对等连接 AWS V…...

【AI大模型】MCP:AI应用的“超级扩展坞”

一、什么是MCP MCP&#xff08;Model Context Protocol&#xff0c;模型上下文协议&#xff09;是一种新兴的开放协议&#xff0c;于2024年11月由Anthropic公司&#xff08;Claude的开发者&#xff09;开源。它的核心目标是建立一个类似USB-C的标准化协议&#xff0c;统一AI模…...

线程封装

目录 makefile Thread.hpp main.cc 以面向对象的方式造轮子 #ifndef _THREAD_HPP__ // 如果没有定义过 _THREAD_HPP__ #define _THREAD_HPP__ // 则定义 _THREAD_HPP__// 这里是头文件的实际内容&#xff08;类、函数声明等&#xff09;#endif // 结束条件…...

【Java后端】MyBatis 与 MyBatis-Plus 如何防止 SQL 注入?从原理到实战

在日常开发中&#xff0c;SQL 注入是一种常见但危害巨大的安全漏洞。如果你正在使用 MyBatis 或 MyBatis-Plus 进行数据库操作&#xff0c;这篇文章将带你系统了解&#xff1a;这两个框架是如何防止 SQL 注入的&#xff0c;我们又该如何写出安全的代码。 什么是 SQL 注入&#…...

智能穿戴的终极形态会是AR眼镜吗?

清晨的地铁里&#xff0c;戴着普通眼镜的小张正通过镜片查看实时导航路线&#xff0c;眼前的虚拟箭头精准指引换乘方向&#xff1b;手术室里&#xff0c;主刀医生透过镜片看到患者血管的3D投影&#xff0c;如同获得透视眼般精准避开危险区域&#xff1b;装修现场&#xff0c;设…...

ubantu18.04(Hadoop3.1.3)Hive3.1.2安装指南

说明&#xff1a;本文图片较多&#xff0c;耐心等待加载。&#xff08;建议用电脑&#xff09; 注意所有打开的文件都要记得保存。本文的操作均在Master主机下进行 第一步&#xff1a;准备工作 本文是在之前Hadoop搭建完集群环境后继续进行的&#xff0c;因此需要读者完成我之…...

Hive 多表查询案例

文章目录 前提条件Hive 多表查询案例JOIN案例JOIN查询数据准备1. 内连接&#xff08;INNER JOIN&#xff09;2. 左外连接&#xff08;LEFT OUTER JOIN&#xff09;3. 右外连接&#xff08;RIGHT OUTER JOIN&#xff09;4. 全外连接&#xff08;FULL OUTER JOIN&#xff09;5. 多…...

4.23刷题记录(栈与队列专题)

第一部分&#xff1a;基础知识 栈先进后出&#xff0c;队列先进先出栈用stack实现&#xff0c;主要函数有pop&#xff0c;push&#xff0c;top队列由queue或者deque实现&#xff0c;主要函数有front&#xff0c;back&#xff0c;push&#xff0c;pop&#xff0c;emplace&#…...

Python常用的第三方模块之【jieba库】支持三种分词模式:精确模式、全模式和搜索引擎模式(提高召回率)

Jieba 是一个流行的中文分词Python库&#xff0c;它提供了三种分词模式&#xff1a;精确模式、全模式和搜索引擎模式。精确模式尝试将句子最精确地切分&#xff0c;适合文本分析&#xff1b;全模式则扫描文本中所有可能的词语&#xff0c;速度快但存在冗余&#xff1b;搜索引擎…...

Redisson实战:分布式系统中的五大典型应用场景

引言 在分布式系统架构中&#xff0c;数据一致性、高并发控制和资源协调是开发者面临的核心挑战。Redisson作为基于Redis的Java客户端&#xff0c;不仅提供了丰富的分布式对象和服务&#xff0c;还简化了分布式场景下的编程模型。本文将通过实际代码示例&#xff0c;解析Redis…...

webrtc建立连接的过程

WebRTC 连接全过程&#xff1a;从零到视频通话的每一步 WebRTC 是个神奇的技术&#xff0c;让浏览器直接进行点对点&#xff08;P2P&#xff09;音视频通话或数据传输&#xff0c;不用每次都靠服务器中转。想知道 Alice 和 Bob 是怎么通过 WebRTC 建立视频通话的吗&#xff1f…...

system verilog 语句 耗时规则

在 SystemVerilog 中&#xff0c;确实有一类语句是**不消耗仿真时间(zero simulation time)**的&#xff0c;我们一般叫它们&#xff1a; ✅ 零延迟语句&#xff08;Zero-Time Statements&#xff09; &#x1f539;1. 什么是“不费时间”的语句&#xff1f; 这些语句在仿真时…...

【Docker】在Ubuntu平台上的安装部署

写在前面 docker作为一种部署项目的辅助工具&#xff0c;真是太好用了需要魔法&#xff0c;不然无法正常运行笔者环境&#xff1a;ubuntu22.04 具体步骤 更新系统包索引 sudo apt update安装必要依赖包 sudo apt install -y apt-transport-https ca-certificates curl softwa…...

2025年阅读论文的常用工具推荐

在快速发展的学术界&#xff0c;阅读和整理论文的能力对于研究者和学生来说至关重要。随着科技的进步&#xff0c;各种工具应运而生&#xff0c;帮助我们更高效地处理文献。本文将为您推荐一些2025年最常用的阅读论文工具&#xff0c;让您的学术之路更加顺畅。 1. SumiNote S…...

pod内部共享命名空间与k8s命名空间是一个东西吗?

文章目录 小知识-命名空间**下面着重介绍一下刚刚提到的内部命名空间**IPC NamespaceNetwork Namespace 本文摘自于我的免费专栏《Kubernetes从0到1&#xff08;持续更新&#xff09;》请多关注 小知识-命名空间 注意&#xff0c;首先我要强调一点&#xff0c;Kubernetes命名空…...

Linux笔记---进程间通信:匿名管道

1. 管道通信 1.1 管道的概念与分类 管道&#xff08;Pipe&#xff09; 是进程间通信&#xff08;IPC&#xff09;的一种基础机制&#xff0c;主要用于在具有亲缘关系的进程&#xff08;如父子进程、兄弟进程&#xff09;之间传递数据&#xff0c;其核心特性是通过内核缓冲区实…...

JAVA设计模式——(三)桥接模式

JAVA设计模式——&#xff08;三&#xff09;桥接模式&#xff08;Bridge Pattern&#xff09; 介绍理解实现武器抽象类武器实现类涂装颜色的行为接口具体颜色的行为实现让行为影响武器修改武器抽象类修改实现类 测试 适用性 介绍 将抽象和实现解耦&#xff0c;使两者可以独立…...

设计模式--工厂模式详解

工厂模式 作用&#xff1a; 实现了创建者与调用者的分离 详细分类 简单工厂模式 工厂方法模式 抽象工厂模式 OOP七大原则&#xff1a; 开闭原则&#xff1a;一个软件的实体应该对拓展开发&#xff0c;对修改关闭 依赖反转原则&#xff1a;要针对接口编程&#xff0c;不…...

每天五分钟深度学习PyTorch:图像的处理的上采样和下采样

本文重点 在pytorch中封装了上采样和下采样的方法,我们可以使用封装好的方法可以很方便的完成采样任务,采样分为上采样和下采样。 上采样和下采样 下采样(缩小图像)的主要目的有两个:1、使得图像符合显示区域的大小;2、生成对应图像的缩略图。 下采样( 放大图像)的…...

前端面试场景题

目录 1.项目第一次加载太慢优化 / vue 首屏加载过慢如何优化 2.说说了解的es6-es10的东西有哪些 ES6&#xff08;ES2015&#xff09;之后&#xff0c;JavaScript 新增了许多实用的数组和对象方法&#xff0c;下面为你详细介绍&#xff1a; 3.常见前端安全性问题 XSS&#…...

国际化不生效

经过我的重重检查 最终发现是 版本问题。 原本下载默认next版本cnpm install vue-i18nnext 下载 国际化插件 cnpm install vue-i18n^9.14.3 删除掉node_models&#xff0c;再重新加载包&#xff1a;cnpm install 这时候就可以正常显示了 国际化操作&#xff1a; en.js zh…...

新一代人工智能驱动医疗数智化:范式变革、实践方向及路径选择

人工智能(AI)正以前所未有的速度重构医疗健康行业的底层逻辑,从数据获取、知识建模到临床决策支持,AI不仅是“辅助工具”,更日益成为医疗生产力体系的核心引擎。随着大模型、计算平台和数智基础设施的迅猛发展,医疗数智化正进入从“点状创新”走向“系统重构”的深水区。…...

OpenCV 图形API(55)颜色空间转换-----将图像从 RGB 色彩空间转换为 I420 格式函数RGB2I420()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 将图像从 RGB 色彩空间转换为 I420 色彩空间。 该函数将输入图像从 RGB 色彩空间转换为 I420。R、G 和 B 通道值的常规范围是 0 到 255。 输出图…...

大模型安全吗?数据泄露与AI伦理的黑暗面!

大模型安全吗&#xff1f;数据泄露与AI伦理的黑暗面&#xff01; 随着人工智能技术的飞速发展&#xff0c;尤其是大型语言模型&#xff08;如GPT-3、BERT等&#xff09;的出现&#xff0c;AI的应用场景越来越广泛&#xff0c;从智能客服到内容生成&#xff0c;从医疗诊断到金融…...

穿越链路的旅程:深入理解计算机网络中的数据链路层

一、引言 在计算机网络的七层模型中&#xff0c;数据链路层&#xff08;Data Link Layer&#xff09; 是连接物理世界与逻辑网络世界的关键一环。它位于物理层之上&#xff0c;网络层之下&#xff0c;负责将物理层的“比特流”转换成具有结构的数据帧&#xff0c;并确保数据在…...

《AI大模型应知应会100篇》第35篇:Prompt链式调用:解决复杂问题的策略

第35篇&#xff1a;Prompt链式调用&#xff1a;解决复杂问题的策略 摘要 在大模型应用中&#xff0c;单次提示的能力往往受限于上下文长度和任务复杂度。为了解决这些问题&#xff0c;Prompt链式调用应运而生。本文将深入探讨如何通过分解任务、设计逻辑链路、传递中间结果&am…...