自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(379)
  • 收藏
  • 关注

原创 xelatex

textbf{成员} & \textbf{职务} & \multicolumn{1}{c|}{\textbf{具体任务}} \ \hline。\section{任务时间}

2025-06-12 11:00:18 58

原创 lab8回溯算法

给定n个圆的半径,将它们放到矩形框中,各圆与矩形底边相切,试用回溯算法求最小排列长度的圆排列的长度(结果保留两位小数)。输入的第一行为1个整数,n,表述圆的数量输入的第二行为n个整数,表示n个圆的半径序列。样例输入输出样例1输入:31 2 1输出:7.66样例2输入:42 4 1 1输出:13.83用cpp要解决这个问题,我们需要找到一种排列方式,将给定的n个圆放置在矩形框中,使得所有圆都与矩形底边相切,并且排列的长度最小。

2025-06-06 10:19:24 267

原创 模拟考试1

题目描述插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列。每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置。如此迭代直到全部元素有序。归并排序进行如下迭代操作:首先将原始序列看成N个只包含1个元素的有序子序列,然后每次迭代归并两个相邻的有序子序列,直到最后只剩下1个有序的序列。现给定原始序列和由某排序算法产生的中间序列,请你判断该算法究竟是哪种排序算法?输入格式:输入在第一行给出正整数N (<=100);随后一行给出原始序列的N个整数;

2025-06-04 15:07:52 307

原创 Lab7-回溯算法

内存限制: 104857600(BYTE)时间限制: 1000(MS)输入限制: 1000(行)输出限制: 1000(行)题目描述将 n 个皇后放置在 n × n 的棋盘上,应该如何放置皇后的位置,保证皇后彼此之间不能相互攻击。使用回溯算法计算n 皇后问题不同的解决方案的数量。输入第一行为一个整数n,表示皇后的数量和棋盘的规模。样例输入输出样例1输入:1输出:1样例2输入:4输出:2。

2025-05-28 18:25:06 696

原创 期末上机考试复习b

题目描述用户输入10进制数字i(-231),转为指定的进制数并输出题目输入:第一行整数i(-231) 进制 m (2<=m<=32)超过10的使用A~V大写字母代替。题目输出:指定的转换后的进制数表示样例输入输出样例1输入:32 32输出:10样例2输入:43 31输出:1C样例3输入:-13 12输出:-11要将给定的十进制整数转换为指定的进制数,并处理负数的情况。

2025-05-28 15:29:16 762

原创 12-AOE

拓扑排序:使用队列进行拓扑排序。初始化时将所有入度为0的节点加入队列,依次处理队列中的节点,减少其邻接节点的入度,若邻接节点入度为0则加入队列。具体来说,每个阶段的最早完成时间等于其自身时间加上所有依赖阶段中最晚完成的时间。要解决这个问题,我们需要计算工程中N个阶段的最短完成时间,同时处理阶段之间的依赖关系。动态规划计算最早完成时间:按照拓扑顺序处理每个节点,其最早完成时间是自身时间加上所有依赖阶段中的最大完成时间。每个节点代表一个阶段,边代表依赖关系(即如果阶段A依赖阶段B,则有一条从B指向A的边)。

2025-05-28 14:18:41 416

原创 13-C++标准类库

题目描述请实现一个智能指针类SmartPointer,要求如下:1、其是一个模板类,具有类型参数T;2、具有一个T* ptr和int* ref_count两个数据属性;3、实现空构造函数、常规构造函数(参数为指针类型)、拷贝构造函数;4、实现赋值运算符重载,包括同类型以及指针类型的赋值;5、重载取内容运算符,重载->调用运算符(重载原型为MyClass}),用于类似指针的调用;6、实现一个析构函数,用于指针内存的释放:当引用计数==1时,动态释放内存。

2025-05-27 14:45:26 487

原创 C++ 虚函数详解

虚函数(virtual function)是C++实现运行时多态(动态多态)的核心机制。下面从多个方面详细讲解虚函数的概念、原理和使用方法。

2025-05-27 14:15:45 366

原创 C++ 虚函数详解

虚函数(virtual function)是C++实现运行时多态(动态多态)的核心机制。下面从多个方面详细讲解虚函数的概念、原理和使用方法。

2025-05-26 21:27:33 277

原创 C++ 基类指针详解

在C++中,基类指针(如)是多态性的关键实现方式之一。下面详细讲解基类指针的作用、用法和注意事项。

2025-05-26 15:32:04 293

原创 Lab6-贪心算法

题目描述某地共有 n 个小区,各个小区编号即0, 1, 2, …, n-1,n-1个外卖员从0号小区出发分别给其它各小区送外卖,每个外卖员负责一个小区的外卖,每个外卖员都会选择到自己所负责的小区最短距离的路径去送外卖。请使用贪心算法计算出所有外卖员到各自所负责的小区的最短距离之和。输入的第一行是整数 n,表示一共 n 个小区。输入的第二行是整数 m,表示一共有 m 条路。接下来输入的 m 行,每行3个整数,分别表示小区 x,小区 y,以及 x 到 y的距离。

2025-05-21 18:49:17 747

原创 cin换行是结束吗

本身通常不会因为换行而结束输入操作,除非在程序中明确设置了输入结束的条件,或者到达了文件末尾等特殊情况。遇到换行符通常并不意味着输入结束,但它会根据具体的输入操作和数据类型来处理换行符。

2025-05-21 14:26:20 196

原创 12-模板与泛型编程

题目描述请用模板函数实现任意类型的数据相加。输入:两行,每一行为一个字符s与数值n,字符s表示数据类型(b:bool, c:char, i:int, f:float, d:double),第二个数为对应的数值。注意:两个数的类型可以不一样,这时候需要按照从低往高的顺序转换,比如char和int的求和应该都使用int。输出:两个值相加的和请注意,对于整型类型,均按照整型加法,浮点类型均按照浮点加法。样例输入输出样例1输入:i 3f 2.23输出:5.23。

2025-05-21 14:23:05 795

原创 11-最短路径

题目描述一个有向图中有 个顶点和 条单向路径 , 试求任意两地点间最短距离。第一行两个正整数 和 ,分别代表点的数量和路径的数量。之后 行每行有三个整数 分别表示 路径 的起点和终点序号和路径长度。顶点编号从0开始,0<=i,j<n,0<k顶点之间最短路径矩阵(n*n),-1代表不连通。每一行的最后一个数字后面没有空格。样例输入输出样例1输入:3 50 1 60 2 131 0 101 2 42 0 5输出:0 6 109 0 4。

2025-05-21 14:09:03 684

原创 上机考试练习

题目描述给定1个正整数 x (int 范围内) ,如果 x 与其倒序获得的整数相加后可以获得一个与x位数相等且所有位数均为同一个数字的整数(例如666),输出 true;否则,输出 false输入:一个正整数输出:样例输入输出样例1输入:234输出:true样例2输入:10输出:true样例3输入:29输出:false。

2025-05-20 20:50:37 255

原创 11-类的多态性

题目描述在一个动物园里,有许多不同种类的动物,包括狮子、老虎和熊。每种动物都有一个名字,而且每种动物都有自己的叫声。你的任务是创建一个动物类(Animal)和三个派生类(Lion,Tiger,Bear),并实现一个虚函数 makeSound(),该函数会打印出动物的叫声。要求:Animal类应该有一个名为name的成员变量和一个名为makeSound的虚函数。Lion,Tiger,Bear类应该从Animal类派生,并且应该重写makeSound函数。

2025-05-20 20:28:38 650

原创 Lab5-贪心算法

题目描述有一棵特殊的苹果树,在 n 天内,每天都可能长出若干个苹果,但每天长出苹果的新鲜度不稳定。苹果树的产出情况由两个长度为 n 的整数数组 apples 和 days 表示。在第 i 天,树上会长出 apples[i] 个苹果,这些苹果将会在 days[i] 天后腐烂,变得无法食用(也就是说,第 i + days[i] 当天不可食用)。也可能有那么几天,树上不会长出新的苹果,此时用 apples[i] = 0 且 days[i] = 0 表示。你打算每天最多吃一个苹果来保证营养均衡。

2025-05-14 21:58:03 318

原创 10-kruskal算法中的并查集

村庄中存在一些路,根据输入的相邻村庄的路,判断某两个村庄是否能够联通。n个村庄使用0到n-1的不同整数标识。路使用取值范围【0,n-1】的整数对表示。例如 3 5,代表村庄3和5之间有一条路。需要判断是否相连的p对村庄,即为2p个范围在【0,n-1】的整数。需要判断是否相连的村庄对数 p 0<p<=10。m条路,即为2m个范围在【0,n-1】的整数。村庄个数 n, 0<n<=20。路的条数 m,0<m<=50。

2025-05-14 21:46:59 121

原创 10-类的继承与派生

介绍:了解类的抽象思想,掌握类的继承与派生方式,学会派生类与基类成员的属性变化和调用方式、学会基类与派生类的赋值操作与二义性处理,掌握虚基类的由来和构造,学会在具有复杂继承关系和对象成员的类的构造顺序和构造方式。

2025-05-13 14:38:06 663

原创 代数系统逆元知识点讲解

设⟨S∘⟩⟨S∘⟩是一个代数系统,其中SSS是集合,∘\circ∘是SSS上的二元运算。对于元素a∈Sa \in Sa∈S,如果存在元素b∈Sb \in Sb∈S,使得a∘bb∘aea∘bb∘aeeee为该代数系统的单位元),则称bbb是aaa的逆元,记为a−1a^{-1}a−1。例如,在整数集合Z\mathbb{Z}Z关于加法运算的代数系统⟨Z⟩⟨Z⟩中,单位元是000。

2025-05-08 11:28:09 521

原创 为什么不建议用using namespace std;

这样可以使代码更加清晰、稳定,减少潜在的错误和问题。命名空间中的标识符时,采用显式的方式,如。为了避免这些问题,建议在使用。在C++ 中不建议使用。

2025-05-08 09:49:32 193

原创 搭建自己的服务器

搭建服务器需要一定的技术知识和经验,在搭建过程中遇到问题可以查阅相关文档或寻求专业人士的帮助。同时,要注意服务器的安全和稳定性,以保障服务的正常运行。

2025-05-08 09:49:02 270

原创 搭建自己的服务器

搭建服务器需要一定的技术知识和经验,在搭建过程中遇到问题可以查阅相关文档或寻求专业人士的帮助。同时,要注意服务器的安全和稳定性,以保障服务的正常运行。

2025-05-08 09:27:48 363

原创 浮点数表示知识点讲解

浮点数是指小数点位置可以浮动的数据,它能表示既有整数部分又有小数部分的数值,可用于近似表示实数。

2025-05-08 09:23:31 437

原创 输入二维数组时怎么判断换行

以上是几种常见的在C++ 中输入二维数组时判断换行的方法,你可以根据具体的需求和场景选择合适的方法。语句跳出循环,结束输入。否则,将数字添加到当前行的向量。如果读取到的行是空行(通过。中的数字,并将它们存储到一个一维向量。循环来持续读取输入。中,并根据换行符判断一行是否结束,将。每次读取一个数字后,使用。,则表示一行输入结束,将当前行的向量。判断),则表示输入结束。读取到文件末尾或者遇到输入错误时,函数用于读取一行输入,存储在。读取下一个字符,如果是换行符。向量,准备读取下一行。

2025-05-07 21:36:27 253

原创 queue<pair>不用pair怎么写

在C++ 中,如果不想直接使用pair类型,在队列queue中存储相关联的信息,可以通过自定义结构体来替代pair的功能,将相关的数据组合在一起。以下是一个示例,展示了如何使用自定义结构体来实现类似MyDataintValuepairmyQueueMyDatadata1data2myQueuewhilepop()这种方式可以根据实际需求灵活地定义结构体的成员,实现与pair类似的功能,并且可以添加更多的成员和成员函数来满足特定的逻辑需求。

2025-05-07 20:56:53 240

原创 Lab4-动态规划

题目描述2077年,小南在进行一次常规的宇宙旅行,他要去的星球太远了,直线距离足足有n光年。但是好消息是:人类已经可以使用任意门了,可以借助建造好的任意门进行传送从小南家门口开始,每隔1光年都会有一道任意门,目标星球上也有现在小南拿到了旅途中n个任意门的传送距离限制,记为数组P。他想知道怎么才能用最少的传送次数到达目标星球。举个例子:第0站最远传送距离是3,那么通过它最远能去到3光年后的第3站。下面介绍两个方案:他贪心去了最远的第3站,但是第3站的传送距离是1,此时他只能去到第4站。

2025-05-07 19:35:19 548

原创 算法1、2

问题:包含若干参数的一般性提问,对参数的一组赋值构成一个具体实例。例如,调度问题中,任务集 (S) 和加工时间 (t_j) 是参数,给定具体的任务集和加工时间即构成一个实例。算法:有限条指令的集合,对问题的任意实例能在有限步内停机并输出正确解。例如,调度问题的贪心算法(按加工时间升序排列任务)能有效求解总等待时间最小化问题。大O(上界):存在正数 (c, n_0),使得 (f(n) \leq cg(n)) 对所有 (n \geq n_0) 成立,如 (n^2 + n = O(n^2))。

2025-05-07 19:26:31 805

原创 mklink命令知识点和使用方法场景及案例

命令时,要确保有足够权限创建和删除链接,目标文件或目录存在且可访问。同时,尽量避免符号链接嵌套,以免导致文件系统遍历错误。

2025-05-07 09:10:18 855

原创 驼峰命名法

与之相对的还有大驼峰命名法(upper camel case),也叫帕斯卡命名法(Pascal case),其特点是每个单词的首字母都大写,常用于类名、命名空间名等。在小驼峰命名法中,变量或函数名的第一个单词的首字母是小写的,从第二个单词开始,每个单词的首字母都大写。这种命名方式可以使标识符中的单词边界更加清晰,增强代码的可读性,便于程序员理解标识符所代表的含义。遵循的是驼峰命名法(Camel Case)中的小驼峰命名法(lower camel case)。

2025-05-06 16:36:15 212

原创 c++命名空间详解

使用namespace// 在这里声明和定义变量、函数、类等 }例如,定义一个名为。

2025-05-06 12:29:42 390

原创 Lab-3 动态规划

题目描述现在有一个容量为v的背包和n件体积不同价值不同的物品,应该如何选择装入物品使背包中的物品总价值最大.要求使用动态规划的思维计算出背包能装下的最大物品总价值.输入第一行为两个整数,n和v,n表示总的物品数量,v表示背包的容量.接下来的n行每行包括两个整数,分别表示物品的体积和价值.提示:对于40%的数据,n≤10;

2025-05-05 13:36:18 822

原创 连通图不含偶圈二部图

设从(v_0)到(x)的路径(P_1 = v_0, v_{i_1}, v_{i_2}, \cdots, x),从(v_0)到(y)的路径(P_2 = v_0, v_{j_1}, v_{j_2}, \cdots, y)。根据二部图的定义:若图(G=(V, E))的顶点集(V)能划分为两个子集(V_1)和(V_2),使得(G)中每条边的两个端点分别属于(V_1)和(V_2),则称(G)为二部图。所以(G)是二部图。因为(G)是连通图,从起始顶点(v_0)到(x)和(y)分别存在路径(P_1)和(P_2)。

2025-05-04 17:10:56 168

原创 &引用变量

在C++中,引用(Reference)是一种别名机制,它允许你通过不同的名称访问同一个变量。这样既能保证效率,又能避免意外修改,还能使接口更灵活(支持临时对象)。函数的参数使用了引用传递(

2025-05-03 14:02:14 120

原创 运算符重载知识点

运算符重载是 C++ 的一个重要特性,它允许我们为自定义类型(如类或结构体)定义运算符的行为。运算符重载允许我们为自定义类型定义运算符的行为,使其像内置类型一样工作。就是一个典型的运算符重载示例,用于重载。:运算符的第一个操作数是当前类的对象(如。运算符以实现自定义输出。

2025-05-03 02:17:01 423

原创 9-查找树的性能对比

对一般的二叉搜索树,AVL树, B(512阶)树,红黑树分别实现指定操作,并分析比较这些数据结构对应一系列插入和删除操作的效率。要求测试对N个不同整数进行下列操作的效率:1按递增顺序插入N个整数,随机查找1000个数,按相同顺序删除2按递增顺序插入N个整数,随机查找1000个数,按相反顺序删除3按随机顺序插入N个整数,随机查找1000个数,按随机顺序删除N从10000到400000取值,间隔为20000,以数据规模N为横轴,以运行时间为纵轴,画出不同数据结构对应的操作效率比较图。

2025-04-30 17:29:23 366

原创 09-类与面向对象编程

题目描述设计一个立方体类Box,它能计算并输出立方体的体积和表面积。要求:(1)包含成员变量m_a(立方体边长)。(2)包含函数SetA(double a)(设置立方体边长)、GetVolume()(计算体积)、GetArea()(计算表面积)。(3)包含函数Display(),用来输出计算的结果。input立方体边长,浮点类型。

2025-04-29 20:56:25 480

原创 08-自定义类型

介绍:深刻理解面向结构编程中的各种概念和数据结构编写方式,初步认识类和各种自定义类型,学会使用指针和函数等面向结构编程的工具来实现数据结构中的各种问题和解决实际中的各种问题,为面向对象编程学习打下基础。在面向结构编程中,学生需要深刻理解各种概念和数据结构编写方式,并学会使用相关工具来解决实际问题。这要求学生在思考问题和解决问题时,要注重全局性和长远性,以及保持细致入微的思考习惯。

2025-04-29 20:39:27 930

原创 矩阵快速幂

接下来输入的 n 行,每行 n 个整数,第 i 行第 j 列的数表示A(i,j),行末无空格。矩阵中元素在每次乘法和累加后对 10^9+7 取模,防止数值溢出。885845976 752438153 560528339用c++给定 n x n 的矩阵 A,使用快速幂算法结合分治策略求 A^k。这段C++ 代码实现了使用快速幂算法结合分治策略来计算矩阵的幂。输入的第一行为两个整数n, k。(10*10,中间数值已省略)

2025-04-24 09:07:33 223

原创 平面最邻近点对

给定平面上 n 个点,使用分治算法输出其中的一对点的距离,使得在这 n 个点的所有点对中,该距离为所有点对中最小的,输出结果四舍五入保留 4 位小数。接下来输入的 n 行,每行两个整数 x, y ,表示一个点的横坐标和纵坐标。输入的第一行为整数 n ,表示点的个数。

2025-04-24 09:06:25 219

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除