常见算法面试题目
前言
总结一些常见的算法题目,每一个题目写一行思路,方便大家复习。具体题目的来源是下面的网站。
剑指offer
剑指offe2
leetcode200题
leetcode 100题
leetcode150题
leetcode 75题
文章目录
- 前言
- 二叉树非递归遍历
- 牛客
- JZ31 栈的压入、弹出序列 (8/4)
- JZ4 二维数组中的查找
- JZ11 旋转数组中的最小数字
- JZ44数字序列中某一位的数字
- JZ42 连续子数组的最大和
- leetcode 100题思路整理
- 前10题
- 10-19题
- 20-29题
- 30-39题
- 40-50 题
- leetcode 150题
- 数组/字符串
- 双指针/滑动窗口
- 矩阵
- 30-40题
- 牛客
- 动态规划
- 回溯
- 0-1背包
二叉树非递归遍历
前序遍历方法一
- 直接右边放入栈,然后左边放入栈。
public List<Integer> preorderTraversal(TreeNode root) {List<Integer>ans = new ArrayList<>();if (root == null) return ans;Stack<TreeNode>st = new Stack<>();st.add(root);while (!st.empty()) {TreeNode node = st.pop();ans.add(node.val);if (node.right != null) st.add(node.right);if (node.left != null) st.add(node.left);}return ans;}
// 方法二
public List<Integer> preorderTraversal(TreeNode root) {List<Integer>ans = new ArrayList<>();Stack<TreeNode>st = new Stack<>();TreeNode node = root;while (node != null || !st.empty()) {while (node != null) {ans.add(node.val);st.add(node);node = node.left;}node = st.pop();node = node.right;}return ans;
中序遍历
- 首先把root放进去
- 尽可能往左走,并且入栈
- 出栈,统计结果,往右走
public List<Integer> inorderTraversal(TreeNode root) {List<Integer>ans = new ArrayList<>();Stack<TreeNode>st = new Stack<>();while (root != null || !st.empty()) {while (root != null) {st.add(root);root = root.left;}root = st.pop();ans.add(root.val);root = root.right;}return ans;}
后续遍历
- 增加pre,防止再重新入栈
- 首先把root放进去
- 尽可能往左走,并且入栈
- 出栈,如果右边没有了或者右边已经遍历过了:输出,更新pre,root置空
- 否则,右边入栈。
class Solution {public List<Integer> postorderTraversal(TreeNode root) {List<Integer>ans = new ArrayList<>();Stack<TreeNode>st = new Stack<>();TreeNode pre = null;while (root != null || !st.empty()) {while (root != null) {st.add(root);root = root.left;}root = st.pop();if (root.right == null || root.right == pre) {ans.add(root.val);pre = root;root = null;} else {st.add(root);root = root.right;}}return ans;}
}
牛客
JZ31 栈的压入、弹出序列 (8/4)
【2,1,0】【1,2,0】是true,但是如果使用if进行出栈,就会成false。
每次只要栈不空,并且栈顶和当前的pop一致,就应该直接出栈。
- 先出栈
- 后入栈
- 最后除了循环再判断
JZ4 二维数组中的查找
- 左上角开始
JZ11 旋转数组中的最小数字
- 如果相等,最小的一定可以是m,所以r一定可以进行缩小。
- 需要和r进行比较
这个可以由以下三种情况总结出来
- 如果逆序:前面的都小于,所以l一直加
- 如果顺序: 没有大于nums[n - 1]的,所以r一直减。
- 如果前顺,后顺
前面的最小值,大于nums[n - 1]。所以当大于,l加,当小于r减。
综合上面三种情况,可以使用二分查找。
- 当大于的时候l加
- 当小于的时候l减。
然后等于的时候
- 如果是r, m在[l, r - 1]中
- 如果不是r, 那么r就可以直接向前移动一个。因为r排除了。
JZ44数字序列中某一位的数字
- 首先判断是几位数字
- 然后计算是第几个数字 (n - 1) /digit
- 最后计算第几位 (n - 1) % digit
JZ42 连续子数组的最大和
- ans = INT_MIN
- s = 0, minv = 0;// 这两个是对应给sun[0]的值。
- 先更新ans,再更新minv
leetcode 100题思路整理
前10题
-
两数之和:
-
使用hash,需要保证两者下标不相同。使用排序处理唯一的就很简单
-
如果需要寻找多个,那么hash还是会简单。边存,边处理。
-
排序寻找多个的情况下,相等一定出现在中间,但是不一定就一组。所以while之后,不能break,而是i++, j–继续寻找下一组相等的。
-
-
两数相加:链表中创建新结点,需要使用p,并且p需要每次移动。如果创建新结点就不用了
-
无重复字符的最长子串:双指针,java使用int[]数组更快
-
最长回文子串
-
正则表达式匹配:*的时候,小优化,类似于完全背包问题的优化,可以考虑直接使用dfs进行求解。只有当j不变的时候,匹配多个。
- j - 1, i - 1表示当前字符
- i= 0的时候s是空串
-
盛水最多的容器:经典双指针。
-
三数之和。排序、保证数字相等的时候continue就行了。
10-19题
- 电话号码的字母组合:简单dfs,使用string保存映射
- 删除链表倒数第N个结点。从nhead向前走N + 1个,然后删除下一个结点
- 有效的阔号组合:简单stack应用
- 合并两个有序链表,p,并且p不断移动。就算最后 = null的时候也需要移动
- 括号生成:简单dfs。使用curl或者sum进行flag标志
- 合并k个升序列表:Priority_Queue的排序函数重写。如果放入队列的为空指针,会报错。
- 下一个排列: Arrays.sort(nums, j + 1, n), 第一个比这个数字大的数字
- 找到第一个可以增大的位数
- 找到大于他的最小的数字
- 从它后一位往后进行排序,这样就是最小的了。
- 数字序列中某一位数字:第k位开始数字start, 第k位数字个数sum。
n / k
,n % k
就是对应的数字和对应的位数 - 最长有效阔号:不会空间优化。stack +dp进行解决。stack中存储下标。f:表示以i结尾的最大的值。 ans = max(f[i])
- 搜索旋转排序数组:直接和nums[0]进行比较,小于一定是右边的。
20-29题
- 排序数组中查找元素的第一个和最后一个位置-lower_bound,upper_bound
- 组合总数-dfs, 从本层的最后一个数字开始,也就是从i开始
- 接雨水:ans += 左右最大的最小的-cur
- 全排列-简单dfs
- 旋转图像-矩形,所以旋转是(n / 2), (n + 1) / 2就行了。另外对应关系是行变列,列变行。然后数量关系是n - j - 1,另一个是i。或者两另一个是n - i - 1, 另一个是j。试一下就行了。
- 字母异位词分组:使用cnt进行计数,使用toString()转换成字符串
- 最大子数组和:求前缀和的最小值。更新的时候sum、ans, minv依次更新就行了
- 跳跃游戏:空间优化cur,就行了
- 合并区间:当前区间的第二维,应该是ans.get[ans.size() - 1]第二维和当前区间第二维的最大值。
- 不同路径:初始化f(0, 0) = 1, 然后让f(i, j) += f(i - 1, j) + f(i, j - 1);
30-39题
- 最小路径和:摘樱桃
- 爬楼梯:斐波那契
- 编辑距离:直接dfs做就行了。参照正则表达式匹配
- 颜色分类:快慢双指针。i永远指向第一个不为0的,j找到下一个为0的,与他交换
- 最小覆盖子串:滑动窗口,满足贪心的双指针,如果窗口中没有,就没有必要继续了。
- 子集:二进制枚举
- 单词搜索:
- 柱状图中最大矩形:单调栈,找左右小于它的第一个坐标,然后就可以求宽度了。
- 最大矩形:前缀和 + 单调栈
- 二叉树的中序遍历:简单
40-50 题
- 不同二叉搜索树
leetcode 150题
数组/字符串
- 合并两个有序数组
- 删除有序数组的重复项II。(nums[i] != nums[j - 1] || nums[i] != nums[j - 2])swap(nums[j++], nums[i])
- 轮转数组(整体轮转,[0, k), [k, n))
- O(1) 时间插入、删除和获取随机元素: map保存下标,删除最后一个元素
- 左右文本对齐
双指针/滑动窗口
- 子串。子数组。
- 最小覆盖子串
- h指数
- 串联所有单词的子串
矩阵
- 矩阵置0,但标志法,逆序处理每一行。最后一行可以直接进行处理。
- 矩阵旋转:上下,然后主对角线。注意i,j的取值范围。
- 螺旋矩阵:最简的办法,就是直接改变当前的矩阵。但是可能会给别的函数造成问题。+ 101,然后减去101就行了。
- 生命游戏:当前矩阵进行编码,进行转换
- 数读游戏:可以三个矩阵 + hash运算进行判断。然后可以使用Space数组保存空格,然后把空格进行填充,使用bool dfs就行了。
30-40题
牛客
动态规划
- 跳台阶扩展:最后一步可以跳1,2…i- 1。不能最后一步不跳,所以是1~n,最少跳一步。
- 矩形覆盖:类似兔子月。f[0] = 0, f[1] = 1, f[2] = 2; 注意n <= 1的情况。让f开大一点
- 礼物最大价值:直接简单dp。
- 把数字翻译成字符串:特殊情况“10”, “100”。
- 如果当前为0,不能加上f[i - 1]
- 如果前面为0,或者组成数字大于26,不能加上f[i - 2]
回溯
-
矩阵的路径:
- 字符相同的时候才能继续向下寻找。
- 回溯,需要让vis变成0。
-
JZ13 机器人的运动范围
- 思路出错,应该是直接从(0, 0)dfs,结果想成了遍历整个矩阵了。
- 正确的思路应该是从(0, 0)开始dfs或者bfs。
0-1背包
- 2787. 将一个数字表示成幂的和的方案数:n
相关文章:
常见算法面试题目
前言 总结一些常见的算法题目,每一个题目写一行思路,方便大家复习。具体题目的来源是下面的网站。 剑指offer 剑指offe2 leetcode200题 leetcode 100题 leetcode150题 leetcode 75题 文章目录 前言二叉树非递归遍历牛客JZ31 栈的压入、弹出序列 (…...
PiflowX组件-JDBCWrite
JDBCWrite组件 组件说明 使用JDBC驱动向任意类型的关系型数据库写入数据。 计算引擎 flink 有界性 Sink: Batch Sink: Streaming Append & Upsert Mode 组件分组 Jdbc 端口 Inport:默认端口 outport:默认端口 组件属性 名称展示名称默…...
算法导论复习题目
这题需要考虑什么呢? 一换元,二要使用主方法猜出结果,三是证明的时候添加一个低阶项来消除 LC检索 C(x)是从上帝视角来看的成本 对C(x)的一个估计: 由两个部分组成,就相当于由以往的经验对未来…...
HTTPS协议详解
目录 前言 一、HTTPS协议 1、加密是什么 2、为什么要加密 二、常见加密方式 1、对称加密 2、非对称加密 三、数据摘要与数据指纹 1、数据摘要 2、数据指纹 四、HTTPS加密策略探究 1、只使用对称加密 2、只使用非对称加密 3、双方都使用非对称加密 4、对称加密非…...
菜鸟学习vue3笔记-vue3 router回顾
1、路由router pnpm i vue-router2、创建使用环境 1.src下创建 router文件夹、里面创建index.ts文件 //创建一个路由暴露出去//1.引入createRouter import { createRouter, createWebHistory } from "vue-router";// import Home from ../components/Home.vue//…...
Mybatis枚举类型处理和类型处理器
专栏精选 引入Mybatis Mybatis的快速入门 Mybatis的增删改查扩展功能说明 mapper映射的参数和结果 Mybatis复杂类型的结果映射 Mybatis基于注解的结果映射 Mybatis枚举类型处理和类型处理器 再谈动态SQL Mybatis配置入门 Mybatis行为配置之Ⅰ—缓存 Mybatis行为配置…...
2023 NCTF writeup
CRYPTO Sign 直接给了fx,gx,等于私钥给了,直接套代码,具体可以参考: https://0xffff.one/d/1424 fx [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0…...
golang的大杀器协程goroutine
在Golang中,协程(Goroutine)是轻量级的执行单元,用于实现并发编程。它是Golang语言的重要组成部分,提供了简洁、高效的方式来处理并发任务。 特点: 1)轻量级:Go语言的协程是轻量级…...
[Angular] 笔记 9:list/detail 页面以及@Output
1. Output input 好比重力,向下传递数据,list 传给 detail,smart 组件传给 dumb 组件,父组件传给子组件。input 顾名思义,输入数据给组件。 output 与之相反,好比火箭,向上传递数据或事件。ou…...
Linux学习笔记(一)
如果有自己的物理服务器请先查看这篇文章 文章目录 网卡配置Linux基础指令ls:列出目录内容cd(mkdir.rmkdir): 切换文件夹(创建,删除操作)cp:复制文件或目录mv:文件/文件夹移动cat:查看文件vi:文件查看编辑man:查看命令手册more: 查看文件内容less : 查看文件内容 ps: 显示当前进…...
Python 爬虫 教程
python爬虫框架:Scrapyd,Feapder,Gerapy 参考文章: python爬虫工程师,如何从零开始部署ScrapydFeapderGerapy? - 知乎 神器!五分钟完成大型爬虫项目 - 知乎 爬虫框架-feapder - 知乎 scrap…...
uniapp原生插件 - android原生插件打包流程 ( 避坑指南一)
【彩带- 避坑知识点】: 当时开发中安卓插件打包成功后,uniapp引用插件aar,用云打包 ,总是提示不包含插件。原因是因为module的androidManifest.xml文件没有注册activity。 这一步 很重要,一定要注册。 --------------------------…...
搭建maven私服
maven maven简介 什么是maven? Maven这个单词来自于意第绪语(犹太语),意为知识的积累。 Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。 Maven 除了以…...
EST-100身份证社保卡签批屏按捺终端PC版web版本http协议接口文档,支持web网页开发对接使用
<!DOCTYPE html><html lang"zh-CN"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width,initial-scale1.0"><title>演示DEMO</title><script type"text/…...
基于SpringBoot的毕业论文管理系统
文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于SpringBoot的毕业论文管理系统,java…...
iToF人脸识别
iToF(间接飞行时间)是一种测量光飞行时间的技术,主要应用于人脸识别。 iToF人脸识别技术在哪些场景下会用到 iToF人脸识别技术可以应用于许多场景,以下是一些常见的应用场景: 平安城市:在城市监控系统中,iToF人脸识别技术可以用于实时监控、目标检测和识别,以及异常行为…...
Django开发3
Django开发3 Django开发编辑用户9.靓号管理9.1 表结构9.2 靓号列表9.3 新建靓号9.4 编辑靓号9.5 搜索手机号9.6 分页 10.时间插件11.ModelForm和BootStrap操作 各位小伙伴想要博客相关资料的话关注公众号:chuanyeTry即可领取相关资料! Django开发 部门管…...
MS2358:96KHz、24bit 音频 ADC
产品简述 MS2358 是带有采样速率 8kHz-96kHz 的立体声音频模数 转换器,适合于面向消费者的专业音频系统。 MS2358 通过使用增强型双位 Δ - ∑ 技术来实现其高精度 的特点。 MS2358 支持单端的模拟输入,所以不需要外部器 件,非常适…...
【Android12】Android Framework系列---tombstone墓碑生成机制
tombstone墓碑生成机制 Android中程序在运行时会遇到各种各样的问题,相应的就会产生各种异常信号,比如常见的异常信号 Singal 11:Segmentation fault表示无效的地址进行了操作,比如内存越界、空指针调用等。 Android中在进程(主要…...
中间件系列 - Redis入门到实战(原理篇)
前言 学习视频: 黑马程序员Redis入门到实战教程,深度透析redis底层原理redis分布式锁企业解决方案黑马点评实战项目 中间件系列 - Redis入门到实战 本内容仅用于个人学习笔记,如有侵扰,联系删除 学习目标 Redis数据结构Redis网…...
P2249 【深基13.例1】查找
P2249 【深基13.例1】查找 P2249 【深基13.例1】查找 题意 输入n 个不超过10的9次方的单调不减的(就是后面的数字不小于前面的数字)非负整数a1,a2,a3…然后进行 m 次询问。对于每次询问,给出一个整数q,要…...
linux常用shell脚本
查看系统当前进程连接数 netstat -an | grep ESTABLISHED | wc -l 如何在/usr目录下找出大小超过10MB的文件? find /usr -type f -size 10240k 添加一条到192.168.3.0/24的路由,网关为192.168.1.254? route add -net 192.168.3.0/24 netmask 255.2…...
Rust学习笔记005:结构体 struct
在 Rust 中,struct 是一种用于创建自定义数据类型的关键字,它允许你定义和组织数据的结构。struct 可以包含多个不同类型的字段(fields),每个字段都有一个名称和一个类型。 定义结构体 下面是一个简单的例子ÿ…...
maven中dependencyManagement标签
简介 dependencyManagement正如其名,用于项目依赖的统一管理。 在父项目中的pom.xml文件中加入dependencyManagement标签即可完成依赖版本的声明。在声明完成后,子项目(module)中引用相同的依赖时可以不指定version标签自动引入…...
SparkStreaming与Kafka整合
1.3 SparkStreaming与Kafka整合 1.3.1 整合简述 kafka是做消息的缓存,数据和业务隔离操作的消息队列,而sparkstreaming是一款准实时流式计算框架,所以二者的整合,是大势所趋。 二者的整合,有主要的两大版本。 kaf…...
openwrt源码编译
下载openwrt源码 git clone https://github.com/openwrt/chaos_calmer.git // 官方下载地址 当前我们基于15.05版本开发,如果开发者想用最新的OpenWRT系统,可以下载 https://github.com/openwrt/openwrt.git git clone https://github.com/Ying-Yun/o…...
【Leetcode Sheet】Weekly Practice 22
Leetcode Test 1349 参加考试的最大学生数(12.26) 给你一个 m * n 的矩阵 seats 表示教室中的座位分布。如果座位是坏的(不可用),就用 # 表示;否则,用 . 表示。 学生可以看到左侧、右侧、左上、右上这四个方向上紧邻…...
ROS TF坐标变换 - 静态坐标变换
目录 一、静态坐标变换(C实现)二、静态坐标变换(Python实现) 如前文所属,ROS通过广播的形式告知各模块的位姿关系,接下来详述这一机制的代码实现。 模块间的位置关系有两种类型,一种是相对固定…...
香橙派5plus从ssd启动Ubuntu
官方接口图 我实际会用到的就几个接口,背面的话就一个M.2固态的位置: 其中WIFI模块的接口应该也可以插2230的固态,不过是pcie2.0的速度,背面的接口则是pcie3.0*4的速度,差距还是挺大的。 开始安装系统 准备工作 一张…...
JWT+Redis 实现接口 Token 校验
1、业务逻辑 有一些接口,需要用户登录以后才能访问,用户没有登录则无法访问。 因此,对于一些限制用户访问的接口,可以在请求头中增加一个校验参数,用于判断接口对应的用户是否登录。 而对于一些不需要登录即可访问的接…...
C语言 linux文件操作(二)
文章目录 一、获取文件长度二、追加写入三、覆盖写入四、文件创建函数creat 一、获取文件长度 通过lseek函数,除了操作定位文件指针,还可以获取到文件大小,注意这里是文件大小,单位是字节。例如在file1文件中事先写入"你好世…...
机器学习分类
1. 监督学习 监督学习指的是人们给机器一大堆标记好的数据,比如: 一大堆照片,标记出哪些是猫的照片,哪些是狗的照片 让机器自己学习归纳出算法或模型 使用该算法或模型判断出其他没有标记的照片是否是猫或狗 上述流程如下图所…...
CSS之元素转换
我想大家在写代码时有一个疑问,块级元素可以转换成其他元素吗? 让我为大家介绍一下元素转换 1.display:block(转换成块元素) display:block可以把我们的行内元素或者行内块元素转换成块元素 接下来让我为大家演示一下: <!DO…...
自激振荡电路笔记 电弧打火机
三极管相关 三极管的形象描述 二极管 简单求解(理想) 优先导通(理想) 恒压降 稳压管(二极管plus) 基础工作模块 理想稳压管的工作特性 晶体管之三极管(“两个二极管的组合” ) 电弧打火机电路 1.闭合开…...
Linux su 命令
Linux su(英文全拼:switch user)命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码。 使用权限:所有使用者。 语法 su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USE…...
论文阅读: AAAI 2022行人重识别方向论文-PFD_Net
本篇博客用于记录一篇行人重识别方向的论文所提出的优化方法《Pose-Guided Feature Disentangling for Occluded Person Re-identification Based on Transformer》,论文中提出的PDF_Net模型的backbone是采用《TransReID: Transformer-based Object Re-Identificati…...
蓝牙物联网灯控设计方案
蓝牙技术是当前应用最广泛的无线通信技术之一,工作在全球通用的 2.4GHZ 的ISM 频段。蓝牙的工作距离约为 100 米,具有一定的穿透性,没有方向限制。具有低成本、抗干扰能力强、传输质量高、低功耗等特点。蓝牙技术组网比较简单,无需…...
Codeforces Round 900 (Div. 3)(A-F)
比赛链接 : Dashboard - Codeforces Round 900 (Div. 3) - Codeforces A. How Much Does Daytona Cost? 题面 : 思路 : 在序列中只要找到k,就返回true ; 代码 : #include<bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0)…...
vue大屏-列表自动滚动vue-seamless-scroll
vue大屏-列表自动滚动vue-seamless-scroll vue-seamless-scroll的官方文档地址:https://chenxuan0000.github.io/vue-seamless-scroll/zh/guide/ 具体效果可到官方文档那里查看。 1、下载依赖 npm install vue-seamless-scroll --save2、使用例子 <template…...
easyx的窗口函数
文章目录 前言一、EasyX的颜色二、EasyX的坐标和设备1,EasyX的坐标2,EasyX的设备 三、窗口函数1,初始化窗口函数2,关闭绘图窗口3,设置窗口背景板颜色4,清空绘图设备 前言 easyx是针对c的图形库,…...
【记录】开始学习网络安全
本文持续更新学习进度 背景 在私企干了5年虚拟化、云原生相关的运维,学到了很多,但不成体系。老板是清华毕业法国留学在德勤干过,最后回国创业的野路子。我工作是为了更好的生活,我挺担心老板因为家庭变故或者炒个原油宝&#x…...
【Java EE初阶三 】线程的状态与安全(下)
3. 线程安全 线程安全:某个代码,不管它是单个线程执行,还是多个线程执行,都不会产生bug,这个情况就成为“线程安全”。 线程不安全:某个代码,它单个线程执行,不会产生bug,…...
MD5算法
一、引言 MD5(Message-Digest Algorithm 5)是一种广泛应用的密码散列算法,由Ronald L. Rivest于1991年提出。MD5算法主要用于对任意长度的消息进行加密,将消息压缩成固定长度的摘要(通常为128位)。在密码学…...
Postman使用
Postman使用 Pre-request Script 参考: Scripting in Postman 可以请求、集合或文件夹中添加Pre-request Script,在请求运行之前执行JavaScript 如设置变量值、参数、Header和正文数据,也可以使用Pre-request Script来调试代码࿰…...
【python 的各种模块】(8) 在python使用matplotlib和wordcloud库来画wordcloud词云图
目录 目标:用python画出,网上流行的wordcloud词云图 1 准备工作 1.1环境准备 1.1.1安装步骤 1.2 资源准备 1.2.1 文本文件内容如下 1.2.2 图片资源 2 代码测试 2.1 第一版代码和效果 2.1.1 代码和效果 2.1.2 一般plt里解决中文乱码问题 2.1…...
MFC随对话框大小改变同时改变控件大小
先看一下效果; 初始; 窗口变大,控件也变大; 二个也可以; 窗口变大,控件变大; 默认生成的对话框没有WM_SIZE消息的处理程序;打开类向导,选中WM_SIZE消息,对CxxxDlg类添加该消息的处理程序;默认生成的函数名是OnSize; 添加了以后代码中会有三处变化; 在对话框类的…...
MK米客方德品牌 SD NAND在对讲机领域的引领作用
SD NAND在对讲机上的应用 SD NAND在对讲机上广泛应用,为其提供了高效可靠的存储解决方案。 这种存储技术不仅能容纳大量语音和数据文件,而且具有高速读取的特点,保障了实时通信的质量。SD NAND还注重安全性,通过数据加密和访问控…...
软件测试/测试开发丨Python 封装 学习笔记
封装的概念 封装(Encapsulation) 隐藏:属性和实现细节,不允许外部直接访问暴露:公开方法,实现对内部信息的操作和访问 封装的作用 限制安全的访问和操作,提高数据安全性可进行数据检查&#x…...
Vue: 事件修饰符, 键盘事件, 鼠标事件,计算属性
目录 事件修饰符 阻止默认事件 阻止冒泡 允许触发一次 捕获模式 self passive 键盘事件 keyup & keydown 按键别名 注意tab 注意系统按键 自定义按键 鼠标事件 简介 鼠标焦点事件 计算属性 差值语法实现 methods实现 computed实现 get() set() 总…...
【ROS2】MOMO的鱼香ROS2(四)ROS2入门篇——ROS2节点通信之话题与服务
ROS2节点通信之话题与服务点 引言1 理解从通信开始1.1 TCP(传输控制协议)1.2 UDP(用户数据报协议)1.3 基于共享内存的IPC方式 2 ROS2话题2.1 ROS2话题指令2.2 话题之RCLPY实现2.2.1 编写发布者2.2 2 编写订阅者2.2.3 运行测试 3 R…...