- 博客(22)
- 收藏
- 关注
原创 PTA-千手观音(拓扑排序)
人类喜欢用 10 进制,大概是因为人类有一双手 10 根手指用于计数。于是在千手观音的世界里,数字都是 10 000 进制的,因为每位观音有 1 000 双手 ……千手观音们的每一根手指都对应一个符号(但是观音世界里的符号太难画了,我们暂且用小写英文字母串来代表),就好像人类用自己的 10 根手指对应 0 到 9 这 10 个数字。同样的,就像人类把这 10 个数字排列起来表示更大的数字一样,ta们也把这些名字排列起来表示更大的数字,并且也遵循左边高位右边低位的规则,相邻名字间用一个点分隔,例如。
2025-04-14 08:00:00
1173
原创 二分法求多项式单根的 C++ 实现
阈值的大小会影响结果的精度。阈值过小会增加迭代次数,影响程序性能;阈值过大会导致结果精度不够。通常选择一个合适的极小值,如。本题的核心任务是使用二分法来求解一个给定的 3 阶多项式在指定区间。在本题中,因为题目保证存在唯一单根,所以可以直接使用。在比较浮点数是否相等时,由于浮点数的精度问题,不能直接使用。,但在更严谨的情况下,应该使用一个极小的误差范围来判断。根据题目的提示给出二分法的过程进行迭代即可完成本题。
2025-04-10 19:24:58
276
原创 C++ vector动态数组的简介
vector是 C++ 标准库中的动态数组容器,它定义在<vector>头文件中,属于std命名空间。vector本质是对传统静态数组的 “升级”,与传统静态数组不同,普通数组在声明时需要指定大小,一旦确定,其大小在程序运行期间就无法改变。而vector通过自动内存管理(按需扩容)和随机访问特性,平衡了数组的高效访问与动态数据量的需求。其设计理念是 “让使用者无需关心内存细节”,将底层内存分配、复制、释放等操作封装,聚焦于业务逻辑。
2025-04-08 20:11:51
318
原创 C++STL容器里通用的函数讲解
C++ STL 容器是 C++ 标准模板库的重要组成部分,它为开发者提供了一系列方便、高效的数据结构,用于存储和管理数据。这些容器封装了数据存储和操作的细节,使得我们可以更加专注于业务逻辑的实现,而无需过多关注底层的实现细节。C++STL的容器有哪些STL 容器的出现,让我们告别了重复造轮子的繁琐工作。它将数据存储和操作进行了高度的封装,提供了统一的接口,使得我们可以专注于解决实际问题,而不必在底层数据结构的实现上花费过多精力。
2025-04-05 17:32:06
718
原创 C++容器有哪些
C++ STL 容器。STL 容器分为三大类:顺序容器、关联容器和容器适配器。顺序容器(如 vector、deque、list)以元素插入顺序存储,支持位置相关的插入操作;关联容器(如 set、map)通过键值自动排序,提供高效查找;容器适配器(如 stack、queue)则基于已有容器实现特定接口,例如栈的 LIFO 特性。各容器都有各自的核心特性。例如,vector 作为动态数组,适合随机访问但中间插入效率低;deque 支持两端快速操作;list 通过双向链表实现任意位置高效插入,但访问元素需遍历。
2025-04-03 10:59:17
282
原创 7-7 约瑟夫环
作者 吴锦桥单位 西北农林科技大学有N个人围成一圈(编号为1~N),从第1号开始进行1、2、3报数,凡报3者就退出,下一个人又从1开始报数……直到最后只剩下一个人时为止。请问此人原来的编号是多少?
2023-12-14 18:50:52
175
1
原创 7-1 感染人数
分数 20作者 黄龙军单位 绍兴文理学院设某住宿区域是一个n×n的方阵,方阵中的每个小方格为一个房间,房间里可能住一个人,也可能空着。第一天,某些房间中住着的人得了一种高传染性的流感,以后每一天,得流感的人会使其邻居(住在其上、下、左、右方向存在的房间里面的人)传染上流感,请问:第m天总共有多少人得流感?
2023-11-30 20:01:11
201
原创 7-1 jmu-java-m01-Scanner入门
分数 10作者 郑如滨单位 集美大学输入一个整数,然后输入一个浮点数(带小数点的数)。对两个数求和,并输出。然后对和进行开根号并输出。再将输出后的值转化为字符串(可使用函数),截取前6个字符(包含小数点)。
2023-11-23 21:49:32
263
1
原创 7-4 帅到没朋友
随后N行,每行首先给出一个正整数K(≤1000),为朋友圈中的人数,然后列出一个朋友圈内的所有人——为方便起见,每人对应一个ID号,为5位数字(从00000到99999),ID间以空格分隔;注意:没有朋友的人可以是根本没安装“朋友圈”,也可以是只有自己一个人在朋友圈的人。这些ID都可能重复,但是我们不需要重复存储,使用到了C++的STL的set用来存储不重复的ID。把这些朋友圈里的ID,不包含只有自己一个人在朋友圈的人。首先分析题目,给了一组包含朋友圈里面的ID,和一组需要查找的对象ID。
2023-11-21 16:40:44
94
原创 7-2 找出一个字符串中出现次数最多的一个字符
每个特定的key会通过一些特定的哈希运算映射到一个特定的位置,当发生冲突时(多个key通过计算映射到同一个位置),在同一个位置的元素会按顺序链在后面。分别输出出现最多次数的字符(如果为字母,输出小写字母),出现的次数,用一个空格分隔,如果有字符出现次数相同的输出较小的字符。行末尾无多余空格和换行。给出一个字符串,字符串的长度不大于10^6,不区分大小写, 字符串中可能包含’A’-‘Z’,‘a’-‘z’,’ '字符。unordered_map是c++的一个容器,它是一个关联容器,内部采用的是hash表结构。
2023-11-18 22:02:36
608
1
原创 7-1 吃火锅
出现的次数和第一次出现的位置。程序输出总的信息条数,以及包含"chi1 huo3 guo1"的信息的数量和第一次出现的位置,或者如果没有包含"chi1 huo3 guo1"的信息,则输出表情"-_-#"。输入每行给出一句不超过 80 个字符的、以回车结尾的朋友信息,信息为非空字符串,仅包括字母、数字、空格、可见的半角标点符号。如果没有出现,则输出"-_-#",否则输出这个词第一次出现的位置和出现的次数。这段代码是检查信息中是否包含"chi1 huo3 guo1",并计算该词出现的次数以及第一次出现的位置。
2023-11-13 16:07:47
51
原创 DAY-5 命题逻辑
设p为命题,复合命题“非p”(或“p的否定”)称作p的否定式,记作¬p。¬符号称作否定联结词,规定¬p为真当且仅当p为假设p为命题,复合命题“非p”(或“p的否定”)称作p的否定式,记作\neg p。\\\neg 符号称作{\color{Tan} 否定联结词} ,规定\neg p为真当且仅当p为假.设p为命题,复合命题非p(或p的否定)称作p的否定式,记作¬p。¬符号称作否定联结词,规定¬p为真当且仅当p为假设。
2023-11-03 22:55:17
141
原创 DAY-4 集合的恒等式
这些基本恒等式描述了集合运算中的一些基本性质和关系。对于理解和处理集合的关系和运算非常有用。上面的公式可以使用集合相等的定义证明。的子集,那么下列恒等式成立。
2023-11-02 22:26:48
236
1
原创 DAY-3 集合
集合在接下来的学习里有许多的使用,例如,关系的实质是一个集合,它包含了元素之间的某种关联或联系;图是由点集和边集组成,图可以用来表示网络、关系、路径等概念;代数系统是由一组集合和定义在这些集合上的运算组成的。
2023-11-01 19:58:53
64
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人