CCF编程能力等级认证GESP—C++6级—20231209

news2024/11/22 11:55:22

CCF编程能力等级认证GESP—C++6级—20231209

  • 单选题(每题 2 分,共 30 分)
  • 判断题(每题 2 分,共 20 分)
  • 编程题 (每题 25 分,共 50 分)
    • 闯关游戏
    • 工作沟通
  • 答案及解析
    • 单选题
    • 判断题
    • 编程题1
    • 编程题2

单选题(每题 2 分,共 30 分)

1、关于C++类和对象的说法,错误的是( )。

A. 在C++中,一切皆对象,即便是字面量如整数5等也是对象
B. 在C++中,可以自定义新的类,并实例化为新的对象
C. 在C++中,内置函数和自定义函数,都是类或者对象
D. 在C++中,可以在自定义函数中嵌套定义新的函数

2、有关下面C++代码的说法,错误的是( )。

class Rectangle{
private:
	class Point{
	public:
		double x;
		double y;
	};
	Point a, b, c, d;
	double length;
	double width;
public:
A. C++中类内部可以嵌套定义类
B. 在类中定义的类被称为内部类,定义类的类被称为外部类
C. 内部类可以随便访问,不需要通过外部类来访问
D. 代码中 Point 被称为内部类,可以通过外部类 Rectangle 来访问, Rectangle::Point

3、有关下面C++代码的说法,正确的是( )。

using namespace std;
class newClass{
	public:
	static int objCounter;
};
int newClass::objCounter = 2;
int main() {
	newClass classA;
	newClass classB;
	cout << newClass::objCounter << endl;
	cout << classB.objCounter << endl; 
}
A.14行代码错误,第15行正确
B.15行代码错误,第14行代码正确
C.1415两行代码都正确
D.6行代码可修改为 objCounter += 1

4、有关下面C++代码的说法,错误的是( )。

struct BiNode{
	char data;
	BiNode* lchid, *rchid;
};
class BiTree{
private:
	BiNode* Creat();
	void Release(BiNode* bt);
	BiNode* root;
public:
	BiTree(){
		root = Creat();
	}
	~BiTree(){
		Release(root);
A. 上列C++代码适用于构造各种二叉树
B. 代码 struct BiNode 用于构造二叉树的节点
C. 代码 BiTree(){root=Creat();} 用于构造二叉树
D. 析构函数不可以省略

5、基于第4题的定义,有关下面C++代码的说法正确的是( )。

void Order(BiNode* bt){
	if (bt == nullptr)
		return;
	else{
		cout << bt->data;
		Order(bt->lchid);
		Order(bt->rchid);
	}
}
A. 代码中 Order( ) 函数是中序遍历二叉树的方法
B. 代码中 Order( ) 先访问根节点,然后对左子树进行前序遍历,再对右子树前序遍历
C. 代码中 Order( ) 先访问中序遍历左子树,然后访问根节点,最后则是中序遍历右子树
D. 代码中 Order( ) 先后序遍历左子树,然后后序遍历右子树,最后访问根节点

6、有关下面C++代码的说法正确的是( )。

typedef struct LinkList{
	int data;
	LinkList* next;
	LinkList* prev;
}LinkList, LinkNode;
bool ListInit(LinkList* &L){
	L = new LinkNode;
	if (!L) return false;
	
	L->next = NULL;
	L->prev = NULL;
	L->data = -1;
	
	return true;
}
A. 上述代码构成单向链表
B. 上述代码构成双向链表
C. 上述代码构成循环链表
D. 上述代码构成指针链表

7、对 hello world 使用霍夫曼编码(Huffman Coding),最少bit(比特)为( )。

A. 4
B. 32
C. 64
D. 88

8、下面的 fiboA() 和 fiboB() 两个函数分别实现斐波那契数列,该数列第1、第2项值为1,其余各项分别为前两项之和。下面有关说法错误的是( )。

int fiboA(int n){
	if (n == 0)
		return 1;
	if (n == 1)
		return 1;
	else{
		return fiboA(n - 1) + fiboA(n - 2);
	}
}
int fiboB(int n){
	if ((n == 0) || (n == 1)){
		fiboB[n] = n;
		return n;
	}else{
		if (fiboB[n] == 0){
			fiboB[n] = FiboB(n - 1) + FiboB(n - 2);
		}
		return fiboB[n];
	}
}
A. fiboA() 采用递归方式实现斐波那契数列
B. fiboB() 采用动态规划算法实现斐波那契数列
C. 当N值较大时, fiboA() 存在大量重复计算
D. 由于 fiboA() 代码较短,其执行效率较高

9、有关下面C++代码不正确的说法是( )。

int Depth(BiTree T){
	if (T == NULL){
		return 0;
	}else{
		int m = Depth(T->lchild);
		int n = Depth(T->rchild);
		if(m > n){
			return m + 1;
		}else{
			return n + 1;
		}
	}
}
A. 该代码可用于求解二叉树的深度
B. 代码中函数 Depth( ) 的参数 T 表示根节点,非根节点不可以作为参数
C. 代码中函数 Depth( ) 采用了递归方法
D. 代码中函数 Depth( ) 可用于求解各种形式的二叉树深度,要求该二叉树节点至少有 left 和 right 属性

10、下面有关树的存储,错误的是( ).

A. 完全二叉树可以用 list 存储
B. 一般二叉树都可以用 list 存储,空子树位置可以用 None 表示
C. 满二叉树可以用 list 存储
D. 树数据结构,都可以用 list 存储

11、构造二叉树 [1,2,3,null,4] ( )。

A. 1(2()(4))(3)
B. 1(2(3)())(4)
C. (1,2(3),(4))
D. (1,(2)(3),(4))

12、下面有关布尔类型的函数的说法,正确的是( )。

A. bool 类型函数只能返回0或者1两种值
B. bool 类型函数可以返回任何整数值
C. bool 类型函数必须有参数传递
D. bool 类型函数没有返回值

13、通讯卫星在通信网络系统中主要起到( )的作用。

A. 信息过滤
B. 信号中继
C. 避免攻击
D. 数据加密

14、小杨想编写一个判断任意输入的整数N是否为素数的程序,下面哪个方法不合适?( )

A. 埃氏筛法
B. 线性筛法
C. 二分答案
D. 枚举法

15、内排序有不同的类别,下面哪种排序算法和冒泡排序是同一类?( )

A. 希尔排序
B. 快速排序
C. 堆排序
D. 插入排序

判断题(每题 2 分,共 20 分)

1、 在面向对象中,方法在C++的class中表现为class内定义的函数。( )

2、C++类的定义中,可以没有构造函数,会给出默认的构造函数( )

3、如果某个C++对象(object)支持下标运算符(方括号运算符),则该对象在所对应class中以成员函数的形式进行了重载。( )

4、 深度优先搜索(DFS,Depth First Search的简写)属于图算法,其过程是对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次。( )

5、 哈夫曼编码(Huffman Coding)具有唯一性,因此有确定的压缩率。 ( )

6、在下面C++代码中,由于删除了变量 ptr ,因此 ptr 所对应的数据也随之删除,故第8行代码被执行时,将报错。( )

	int * ptr = new int(10);
	cout << *ptr << endl;
	delete ptr;
	cout << *ptr << endl;

7、 二叉搜索树查找的平均时间复杂度为 O(logN)。( )

8、二叉搜索树可以是空树(没有任何节点)或者单节点树(只有一个节点),或者多节点。如果是多节点,则左节点的值小于父节点的值,右节点的值大于父节点的值,由此推理,右节点树的值都大于根节点的值,左节点树的值都小于根节点的值。( )

9、 小杨想写一个程序来算出正整数N有多少个因数,经过思考他写出了一个重复没有超过N/2次的循环就能够算出来了。( )

10、同样的整数序列分别保存在单链表和双向链中,这两种链表上的简单冒泡排序的复杂度相同。( )

编程题 (每题 25 分,共 50 分)

闯关游戏

【问题描述】
你来到了一个闯关游戏。
这个游戏总共有 N 关,每关都有 M 个通道,你需要选择一个通道并通往后续关卡。其中,第 i 个通道可以让你前进 a 关,也就是说,如果你现在在第 x 关,那么选择第 i 个通道后,你将直接来到第x + ai 关(特别地,如果x + ai >= N,那么你就通关了)。此外,当你顺利离开第 s 关时,你还将获得 bs 分。
游戏开始时,你在第 0 关。请问,你通关时最多能获得多少总分?
【输入描述】
第一行两个整数N ,M分别表示关卡数量和每关的通道数量。
接下来一行 M 个用单个空格隔开的整数 a 0 , a 1 , . . . , a M − 1 a_0,a_1,...,a_{M-1} a0,a1,...,aM1 。保证 1 <= ai <= N。
接下来一行 N 个用单个空格隔开的整数 b 0 , b 1 , . . . , b N − 1 b_0,b_1,...,b_{N-1} b0,b1,...,bN1 。保证 ∣ b i ∣ < = 1 0 5 |b_i| <= 10^5 bi<=105
【输出描述】
一行一个整数,表示你通关时最多能够获得的分数。
【特别提醒】
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。
【样例输入 1】
6 2
2 3
1 0 30 100 30 30
【样例输出 1】
131
【样例解释 1】
你可以在第0 关选择第1 个通道,获得1 分并来到第3 关;随后再选择第0 个通道,获得100 分并来到第5 关;最后任选一个通道,都可以获得30 分并通关。如此,总得分为 1 + 100 + 30 = 131。
【样例输入 2】
6 2
2 3
1 0 30 100 30 -1
【样例输出 2】
101
【样例解释 1】
请注意,一些关卡的得分可能是负数。
【数据规模】
对于20%的测试点,保证M = 1 。
对于40%的测试点,保证N <= 20 ;保证M <= 2 。
对于所有测试点,保证N <= 1 0 4 10^4 104 ;保证M <= 100 。

工作沟通

【问题描述】
某公司有N 名员工,编号从0 至N-1 。其中,除了0 号员工是老板,其余每名员工都有一个直接领导。我们假设编号为i 的员工的直接领导是fi 。
该公司有严格的管理制度,每位员工只能受到本人或本人直接领导或间接领导的管理。具体来说,规定员工x 可以管理员工y ,当且仅当x = y ,或x = fy ,或x 可以管理fy 。特别地, 0号员工老板只能自我管理,无法由其他任何员工管理。
现在,有一些同事要开展合作,他们希望找到一位同事来主持这场合作,这位同事必须能够管理参与合作的所有同
事。如果有多名满足这一条件的员工,他们希望找到编号最大的员工。你能帮帮他们吗?
【输入描述】
第一行一个整数N ,表示员工的数量。
第二行N - 1 个用空格隔开的正整数,依次为f1,f2,…,fN-1 。
第三行一个整数Q ,表示共有Q 场合作需要安排。
接下来Q 行,每行描述一场合作:开头是一个整数 m(2<=m<=N ),表示参与本次合作的员工数量;接着是m个整数,依次表示参与本次合作的员工编号(保证编号合法且不重复)。
保证公司结构合法,即不存在任意一名员工,其本人是自己的直接或间接领导。
【输出描述】
输出 Q行,每行一个整数,依次为每场合作的主持人选。
【特别提醒】
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。
【样例输入 1】
5
0 0 2 2
3
2 3 4
3 2 3 4
2 1 4
【样例输出 1】
2
2
0
【样例解释 1】
对于第一场合作,员工3,4 有共同领导2 ,可以主持合作。
对于第二场合作,员工2 本人即可以管理所有参与者。
对于第三场合作,只有0 号老板才能管理所有员工。
【样例输入 2】
7
0 1 0 2 1 2
5
2 4 6
2 4 5
3 4 5 6
4 2 4 5 6
2 3 4
【样例输出 2】
2
1
1
1
0

【数据规模】
对于50%的测试点,保证N <= 50 。
对于所有测试点,保证3 <= N <= 300 ;Q <= 100 。

答案及解析

单选题

1、
【答案】D
【考纲知识点】语法知识点
【解析】自定义函数中不能嵌套定义新函数。

2、
【答案】C
【考纲知识点】语法知识点
【解析】内部类是需要通过外部类访问的。

3、
【答案】C
【考纲知识点】语法知识点
【解析】objCounter 是静态成员,2 种方式都可以访问。

4、
【答案】D
【考纲知识点】语法知识点
【解析】析构函数可以省略。系统可以默认一个析构函数。

5、
【答案】B
【考纲知识点】数据结构知识点
【解析】对二叉树的先序遍历,根左右。

6、
【答案】B
【考纲知识点】数据结构知识点
【解析】实现一个链表,指向前面和后面的元素。

7、
【答案】B
【考纲知识点】数据结构知识点
【解析】赫夫曼编码。按照出现次数进行赫夫曼编码,如下图。共32bit。

在这里插入图片描述

8、
【答案】D
【考纲知识点】算法知识点
【解析】fiboA 函数会存在重复计算,执行效率不高。

9、
【答案】B
【考纲知识点】数据结构知识点
【解析】左右孩子也可以作为参数,不一定只有根节点。

10、
【答案】D
【考纲知识点】数据结构知识点
【解析】完全二叉树和满二叉树的节点下标是连续的,其他类型的节点数不确定,下标不一定连续,就不宜用 list 存储。

11、
【答案】A
【考纲知识点】数据结构知识点
【解析】构造二叉树,用括号表示法。1 是根结点,其左右孩子为2,3,写成1(2)(3)。用同样的思路构建左子树和右子树,选 A。

12、
【答案】A
【考纲知识点】语言函数知识点
【解析】bool 类型函数只能返回布尔类型,布尔值只有0 或者1。

13、
【答案】B
【考纲知识点】计算机基础知识
【解析】本题考察计算机基础知识。通信卫星可以转发无线电信号,实现通信地球站间或地球站与航天器间的无线电通信,因此具有信号中继作用。选B。

14、
【答案】C
【考纲知识点】数学知识
【解析】本题考察数学知识。线筛和埃筛都可以判断素数,枚举也可以,二分规模减半,不能合理判断。

15、
【答案】B
【考纲知识点】排序知识
【解析】冒泡排序和快速排序,都属于交换排序。
交换排序:冒泡排序、快速排序
选择排序:简单选择排序、堆排序
插入排序:直接插入排序、希尔排序
归并排序
基数排序

判断题

1、
【答案】正确
【考纲知识点】c++语言知识
【解析】方法在 c++中也就是类内的函数。

2、
【答案】正确
【考纲知识点】c++语言知识
【解析】构造函数没有,系统会给一个默认的构造函数。

3、
【答案】正确
【考纲知识点】c++语言知识
【解析】标准库类型 vector 和 string 都重载了下标运算符。

4、
【答案】正确
【考纲知识点】算法知识
【解析】深搜就是“能深则深、不能深则退”。

5、
【答案】错误
【考纲知识点】算法知识
【解析】哈夫曼编码确实是唯一的。但是,这并不意味着它总是有确定的压缩率。压缩率通常定义为压缩后数据大小与原始数据大小的比值。对于哈夫曼编码来说,压缩率会受到输入数据的特性(如字符频率分布)的影响。不同的输入数据,即使使用相同的哈夫曼编码算法,也可能得到不同的压缩率。

6、
【答案】错误
【考纲知识点】语法知识
【解析】一个指针的指向对象已被删除,那么就成了悬空指针。指针本身仍然存在,但它的指向变得不确定,因为原来的内存已经被释放并可能被重新分配给其他用途。可能会导致程序崩溃,但是可能正常执行。

7、
【答案】正确
【考纲知识点】数据结构知识
【解析】若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值;若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值;它的左、右子树也分别为二叉排序树。平均情况下是一分为二。

8、
【答案】正确
【考纲知识点】数据结构知识
【解析】若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值;若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值;它的左、右子树也分别为二叉排序树。平均情况下是一分为二。

9、
【答案】正确
【考纲知识点】算法知识
【解析】可以的。N 除了自身,只能有 1 个大于等于n/2 的因子。

10、
【答案】正确
【考纲知识点】算法知识
【解析】都是相邻的数字交换。

编程题1

1、
【题目大意】从 0 关出发,每次都有 m 种选择,选的的第i 个关卡,到达的下一个关卡是 0+ mi。当关卡的总和大于等于 N 的时候,便停止游戏。注意,离开第 i 个关卡,可以获得关卡的分数。
【考纲知识点】循环知识,动态规划
【解题思路】可以考虑动态规划。每关都是一个阶段,每关增加的都是一个正数,关数增加是单向的。保存好某个阶段的状态,因为是离开才能获得分数,因此不能加上当前关卡的分数。可求出所有阶段的最值,因为可能存在某关是负值,要求出所有状态的最大值。


编程题2

2、
【题目大意】0 号是老板,一个人可以管理自己,管理直接下属,管理下属的下属。可以根据关系建立起树结构。现在要求有 m 个人自己组织会议,要找一个人主持会议。如果 m 个人中能主持就从 m 个人中选,不能就找上级领导,有多个选择,就求出最大的编号。注意,参会和主持的角色不一样。
【考纲知识点】循环知识,树结构,深搜,有根树
【解题思路】首先要建立树结构,根据父子关系,求出节点的结构,并求出对应的层数。针对每次查询,先看一下 m 个人中,层数最低的能不能主持会议,不能就从上级中选取,结果最小就是 0 号来主持。注意,要编号最大的,因此在筛选的时候从大到小去筛选。根据层中的第 i 个节点去判断能否访问到m中的每个孩子,如果是,那就可以主持。假设 3 和 1 都符合,也在同一层,但是倒序查找,找到 3 就退出了。符合最终答案。


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

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

相关文章

Midjourney绘图欣赏系列(五)

Midjourney介绍 Midjourney 是生成式人工智能的一个很好的例子&#xff0c;它根据文本提示创建图像。它与 Dall-E 和 Stable Diffusion 一起成为最流行的 AI 艺术创作工具之一。与竞争对手不同&#xff0c;Midjourney 是自筹资金且闭源的&#xff0c;因此确切了解其幕后内容尚不…

2024023期传足14场胜负前瞻

新的一年祝大家行大运、发大财、中大奖&#xff01;2024023期赛事由英超2场&#xff0c;德甲2场、意甲4场、西甲3场、法甲3场组成。售止时间为2月18日&#xff08;周六&#xff09;21点30分&#xff0c;敬请留意&#xff1a; 本期中深盘较少&#xff0c;1.5以下赔率仅1场&#…

二、ActiveMQ安装

ActiveMQ安装 一、相关环境二、安装Java8三、下载安装包四、启动五、其他命令六、开放端口七、后台管理 一、相关环境 环境&#xff1a;Centos7.9安装ActiveMQ版本&#xff1a;5.15.9JDK8 二、安装Java8 安装教程&#xff1a;https://qingsi.blog.csdn.net/article/details/…

RCS系统之:基础算法

设计仓库机器人的控制管理系统涉及到路径规划、任务分配、库存管理、通信系统等方面。以下是一个基本的仓库机器人控制管理系统方案的概述&#xff1a; 路径规划&#xff1a;设计一个路径规划系统&#xff0c;用于确定机器人在仓库内的最佳行驶路径&#xff0c;以最大程度地提…

学习数据结构和算法的第9天

题目讲解 移除元素 ​ 给你一个数组nums和一个值 val&#xff0c;你需要 原地 移除所有数值等于 val的元素&#xff0c;并返回移除后数组的新长度。 ​ 不要使用额外的数组空间&#xff0c;你必须仅使用0(1)额外空间并 原地 修改输入数组。 ​ 元素的顺序可以改变。你不需要…

使用Taro开发鸿蒙原生应用——快速上手,鸿蒙应用开发指南

导读 本指南为开发者提供了使用 Taro 框架开发鸿蒙原生应用的快速入门方法。Taro&#xff0c;作为一个多端统一开发框架&#xff0c;让开发者能够使用一套代码同时适配多个平台&#xff0c;包括鸿蒙系统。文章将详细介绍如何配置开发环境&#xff0c;以及如何利用 Taro 的特性…

leetcode hot100 拆分整数

在本题目中&#xff0c;我们需要拆分一个整数n&#xff0c;让其拆分的整数积最大。因为每拆分一次都和之前上一次拆分有关系&#xff0c;比如拆分6可以拆成2x4&#xff0c;还可以拆成2x2x2&#xff0c;那么我们可以采用动态规划来做。 首先确定dp数组的含义&#xff0c;这里dp…

linux学习进程控制【创建-终止-等待】

目录 1.进程创建 1.1fork函数 1.2写时拷贝 2.进程终止 2.1进程退出场景 2.2进程退出方式 3.进程等待 3.1进程等待的必要性 3.2等待方式 3.2.1wait&#xff08;&#xff09; 3.2.2waitpid&#xff08;&#xff09; 3.3轮训等待 总结&#xff1a; 1.进程创建 …

给定n个结点m条边的简单无向图,判断该图是否存在鱼形状的子图:有一个环,其中有一个结点有另外两条边,连向不在环内的两个结点。若有,输出子图的连边

题目 思路: #include <bits/stdc++.h> using namespace std; #define int long long #define pb push_back #define fi first #define se second #define lson p << 1 #define rson p << 1 | 1 const int maxn = 1e6 + 5, inf = 1e18 * 3, maxm = 4e4 + 5,…

对树莓派上配置mdadm的一些补充

1、如果要重新配置该如何回退到初始状态&#xff1f; 答&#xff1a;可参考以下指令&#xff1a; cat /proc/mdstat sudo umount /dev/md0 sudo mdadm --stop /dev/md0 sudo mdadm --zero-superblock /dev/sda sudo mdadm --zero-superblock /dev/sdb sudo nano /etc/fstab&a…

不具备这十个能力,真不能说是专业的B端系统设计师

B端系统的复杂程度要远远的超过C端&#xff0c;作为这类设计师绝对不能满足于&#xff0c;画个界面&#xff0c;拼一下组件能搞定的&#xff0c;真的需要精心研究&#xff0c;本文列举了十项能力&#xff0c;帮助设计师们针对的提升。 一、什么是B端管理系统设计 B端管理系统设…

谷歌新动作:双子模型大放送,开发者福音来了!

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

wayland(xdg_wm_base) + egl + opengles——dma_buf 作为纹理数据源(五)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、EGL dma_buf import 相关的数据结构和函数1. EGLImageKHR2. eglCreateImageKHR()3. glEGLImageTargetTexture2DOES()二、egl 中 import dma_buf 作为纹理的代码实例1. egl_wayland_dmabuf_…

Flink理论—Flink架构设计

Flink架构设计 Flink 是一个分布式系统&#xff0c;需要有效分配和管理计算资源才能执行流应用程序。它集成了所有常见的集群资源管理器&#xff0c;例如Hadoop YARN&#xff0c;但也可以设置作为独立集群甚至库运行,例如Spark 的 Standalone Mode 本节概述了 Flink 架构&…

单片机学习笔记---直流电机驱动(PWM)

直流电机介绍 直流电机是一种将电能转换为机械能的装置。一般的直流电机有两个电极&#xff0c;当电极正接时&#xff0c;电机正转&#xff0c;当电极反接时&#xff0c;电机反转 直流电机主要由永磁体&#xff08;定子&#xff09;、线圈&#xff08;转子&#xff09;和换向器…

leetcode(双指针)15.三数之和(C++详细解释)DAY10

文章目录 1.题目示例提示 2.解答思路3.实现代码结果 4.总结 1.题目 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的…

shell脚本之高级变量

目录 一、高级变量赋值 1、高级变量赋值总结表 2、相关操作 二、变量间接引用 1、eval命令 一、高级变量赋值 1、高级变量赋值总结表 变量配置方式str 无配置str 为空字符串str 已配置为非空字符串var${str-expr}varexprvarvar$strvar${str:-expr}varexprvarexprvar$str…

RK3399平台开发系列讲解(调试篇)死锁检测工具lockdep

🚀返回专栏总目录 文章目录 一、常见死锁场景二、lockdep使用方法三、lockdep技术原理3.1、锁类状态3.2、检查规则沉淀、分享、成长,让自己和他人都能有所收获!😄 📢介绍死锁检测工具lockdep。 资料 一、常见死锁场景 场景1:进程重复申请同一个锁,称为AA死锁。例如…

多模态(三)--- BLIP原理与源码解读

1 BLIP简介 BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generation 传统的Vision-Language Pre-training &#xff08;VLP&#xff09;任务大多是基于理解的任务或基于生成的任务&#xff0c;同时预训练数据多是从web获…

CMU和ETH联合研发了一个名为 「敏捷但安全」的新框架,为四足机器人在复杂环境中实现高速运动提供了解决方案

在高速机器人运动领域&#xff0c;实现同时兼顾速度和安全一直是一大挑战。但现在&#xff0c;卡内基梅隆大学&#xff08;CMU&#xff09;和苏黎世联邦理工学院&#xff08;ETH&#xff09;的研究团队带来了突破性进展。他们开发的新型四足机器人算法&#xff0c;不仅能在复杂…