- 博客(32)
- 收藏
- 关注
原创 P11【力扣+知识点】【算法】【递归】C++版
F(n) = F(n - 1) + F(n - 2),其中 n > 1。编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组。开始,后面的每一项数字都是前面两项数字的和。、使用 O(1) 的额外空间解决这一问题。不要给另外的数组分配额外的空间,你必须。表示)形成的序列称为。
2024-06-01 16:43:59
280
原创 P10-P11【重载,模板,泛化和特化】【分配器的实现】
以上分配器的性能和内存管理有很大不足(在分配内存时,会产生很大的内存开销)三类模板(类模板)(函数模板)(成员函数模板)偏特化:模板参数个数/模板范围。延续了G2.9的alloc。
2024-05-29 19:54:52
322
原创 P10【力扣+知识点】【算法】【滑动窗口】C++版
任意长度为 2 的子字符串都包含 2 个元音字母。的单个子字符串中可能包含的最大元音字母数。子字符串 "iii" 包含 3 个元音字母。如果不存在符合条件的子数组,返回。找出该数组中满足其总和大于等于。个正整数的数组和一个正整数。
2024-05-29 16:28:15
324
原创 P7-P9【分配器】【源文件】【OOPvs.GP】
泛型编程主要将数据和方法分离开,注重编写灵活和可重用的代码,使得代码可以在不同的类型上实现,适合处理数据结构。面向对象编程是将数据和方法联系在一起,更注重对不同的对象做出不同的响应,更适合是构建一个复杂的系统。
2024-05-28 20:23:17
213
原创 P9 【力扣+知识点】【算法】【二分查找】C++版
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回。或者返回索引 5, 其峰值元素为 6。3 是峰值元素,你的函数应该返回其索引 2。你的函数可以返回索引 1,其峰值元素为 2;峰值元素是指其值严格大于左右相邻值的元素。,如果目标值存在返回下标,否则返回。个元素有序的(升序)整型数组。给你一个满足下述两条属性的。你必须实现时间复杂度为。的算法来解决此问题。
2024-05-28 11:10:50
924
原创 P3-P6容器之分类与各种测试
序列容器关联式容器这里讲到的哈希碰撞,是两个元素的存放位置冲突,用链表进行处理;同时hashtable的链表不能太长。
2024-05-27 16:21:08
452
原创 P8【力扣+知识点】【算法】【双指针】C++版
指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数。每艘船最多可同时载两人,但条件是这些人的重量之和最多为。来表示链表尾连接到链表中的位置(索引从 0 开始)。4 艘船分别载 (3), (3), (4), (5)3 艘船分别载 (1, 2), (2) 和 (3)如果链表中有某个节点,可以通过连续跟踪。仅仅是为了标识链表的实际情况。,每艘船可以承载的最大重量为。承载所有人所需的最小船数。1 艘船载 (1, 2),判断链表中是否有环。给你一个链表的头节点。
2024-05-27 10:16:56
488
原创 P7【力扣215,692】【数据结构】【堆heap】C++版
"the", "is", "sunny" 和 "day" 是出现次数最多的四个单词,返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率,3.将rec容器按照键值的大小进行降序排序,若键值相等,按字母的字典序排序。"i" 和 "love" 为出现次数最多的两个单词,均为2次。1.先创建哈希表,键key为字母,值value为字母出现的次数。注意,按字母顺序 "i" 在 "love" 之前。请注意,你需要找的是数组排序后的第。个最大的元素,而不是第。个出现次数最多的单词。
2024-05-26 14:20:59
757
原创 P7【知识点】【数据结构】【堆heap】c++版
堆(Heap)通常不是通过标准库直接提供的特定数据结构,但通常我们指的是优先队列(),它通常使用堆(特别是最大堆)来实现。此外,C++ STL(标准模板库)也提供了。等函数来在任意数组或容器中模拟堆的行为。【215】数组中第k个最大的元素。【692】前k个高频单词。
2024-05-22 11:31:38
247
原创 P6【力扣144,94,145】【数据结构】【二叉树遍历】C++版
从根节点开始遍历,并将根节点入栈,再遍历他的左子树,并依次入栈,直到该结点没有左子树。判断这个结点是否有右子树,如果没有,则将该结点弹出栈,并记录结点值。如果有则继续从他的右子树进行遍历,同时记录该结点的右子树是否遍历过,如果遍历过,则弹栈并记录结点值。时间复杂度:O(N)每个结点会遍历一次且只遍历一次。空间复杂度:O(N)栈至多会存放所有树节点。
2024-05-22 10:59:33
560
原创 P6【知识点】【数据结构】【树tree】C++版
普通二叉树:每个结点最多两个孩子满二叉树:除了叶子结点,每个节点都有两个孩子,且叶子节点在同一层上完全二叉树:从树的根节点,从上到下,从左到右依次填满节点形成的二叉树。
2024-05-22 08:49:57
231
原创 P5【力扣705】【数据结构】【哈希集合】C++版
/ 返回 False ,(未找到)myHashSet.contains(2);// 返回 False ,(已移除)myHashSet.contains(1);// 返回 True。// 返回 True。不使用任何内建的哈希表库设计一个哈希集合(HashSet)。时间复杂度:O(N)空间复杂度:O(N)
2024-05-21 11:15:25
206
原创 P5【知识点】【数据结构】【哈希表unordered_set】C++版
哈希集合内部使用哈希表来存储元素。哈希表通过哈希函数将元素映射到数组的某个位置(桶),从而可以快速地进行插入、删除和查找操作。:哈希集合中的元素是唯一的,即集合中不会出现重复的元素。如果尝试插入一个已存在的元素,该操作将不会有任何效果。:哈希集合中的元素是无序的,即元素的插入顺序与遍历顺序可能不同。1.访问(Access) 不支持。2.搜索(Search)3.插入(Insert)4.删除(delete)
2024-05-21 10:52:35
312
原创 P4【力扣217,389,496】【数据结构】【哈希表】C++版
随机重排,然后在随机位置添加一个字母。如果数组中每个元素互不相同,返回。如果任一值在数组中出现。'e' 是那个被添加的字母。,它们只包含小写字母。时间复杂度:O(N)空间复杂度:O(N)
2024-05-20 13:01:28
631
1
原创 P3【力扣20,496】【数据结构】【栈Stack】C++版
2.从队列取出队头元素,与栈顶元素对比,当栈顶元素大于对头元素,将栈顶元素存放在curMax,然后弹出栈顶元素。继续比较,只要栈顶元素大于队头元素,就更新curMax,直到栈顶元素等于对头元素;从零开始遍历每个字符并判断该字符与栈顶元素是否括号对应,如果是则弹出栈顶元素,否则存放到栈。- 2 ,用加粗斜体标识,nums2 = [1,3,4,- 4 ,用加粗斜体标识,nums2 = [1,2,3,- 4 ,用加粗斜体标识,nums2 = [1,3,不存在下一个更大元素,所以答案是 -1。
2024-05-19 17:38:52
774
1
原创 P3【知识点】【数据结构】【栈Stack】C++讲解
1.访问元素(Access) O(1)访问栈顶元素。4.删除元素(delete)O(1) 栈顶元素。2.搜索元素(Search)O(N)3.插入元素(insert)O(1)【496】下一个更大得元素I。
2024-05-19 16:22:33
390
1
原创 P2【练习力扣933】【数据结构】【队列queue】C++版
,范围是 [-2900,100],返回 2。],范围是 [-2999,1],返回 1。],范围是 [1,3001],返回 3。],范围是 [2,3002],返回 3。类来计算特定时间范围内最近的请求。的调用都使用比之前更大的。
2024-05-18 15:00:39
563
原创 P2【知识点】【数据结构】【队列queue】C++版
此数据结构适用于FIFO技术,其中FIFO表示先进先出。首先插入的元素将首先被提取,依此类推。有一个称为“前”的元素,它是位于最前位置或位于第一个位置的元素,也有一个名为“后”的元素,它是位于最后位置的元素。在普通队列中,元素的插入在尾部,而删除则从前面开始。ss.empty()队列为空返回true,否则返回false。【933】最近的请求次数。【239】滑动窗口最大值。
2024-05-18 13:38:59
318
原创 P1【知识点】【数据结构】【链表LinkedList】C++版
需要注意的是,在具体实现的时候,需要先暂存C结点的指针,先将其赋值给F结点指针,然后再将F结点的地址赋值给C结点的指针,否则会丢失D结点的地址,链表就会在此处断开。链表类list的声明如下,主要实现了以下操作。假如需要在C结点后面插入F结点,只需要使C结点的指针指向F,F结点的指针指向结点D即可,如图所示。删除操作需要注意的是,每个结点都是通过new在堆区申请的内存,因此删除节点需要手动释放其内存。假如需要删除D结点,则直接让C结点的指针指向E结点即可,如图所示。【203】移除链表元素。
2024-05-17 09:56:57
1187
原创 P0【练习力扣485,283,27】【数据结构】【数组Array】C++版
你的函数应该返回 k = 5,并且 nums 中的前五个元素为 0,0,1,3,4。开头的两位和最后的三位都是连续 1 ,所以最大连续 1 的个数是 3.你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。你的函数函数应该返回 k = 2, 并且 nums。移动到数组的末尾,同时保持非零元素的相对顺序。,必须在不复制数组的情况下原地对数组进行操作。元素的顺序可能发生改变。中的前两个元素均为 2。,编写一个函数将所有。
2024-05-16 09:58:13
251
1
原创 P0【知识点】【数据结构】【数组Array】讲解C++版
大O表示法 O(1) < O(logN) < O(N) < O(NlogN) < O(N^2) < O(2^N)at() 这个方法返回的是一个引用,可以吧一个常量 int 赋值给它。数组索引(Access):是通过数组的下标去找这个元素。大O表示法 O(1) < O(N) < O(N^2)数组搜索(Search):是找这个元素的位置(索引)3.插入 Insert O(N)4.删除 Delete O(N)1.访问access O(1)2.搜索search O(N)【485】最大连续1的个数。
2024-05-16 08:54:08
286
原创 如何解决我在自己conda环境的pip包会放在base环境中
我在自己的创建conda环境下载的pip包全部下载到/home/用户名/lib/python3.6/site-packages/这个文件夹下。
2023-12-06 18:07:48
697
1
原创 【6】Pytorch深度学习实践 第6讲 -Logistic regression(分类问题)【笔记】
BCE二类交叉熵(Binary Cross-entropy)出自up主 刘二大人。
2023-12-05 10:00:31
360
原创 【笔记】出自【强推】B站公认讲的最好的openCV计算机视觉教程的openCV函数汇总3,视频P23-P35
【代码】【笔记】出自【强推】B站公认讲的最好的openCV计算机视觉教程的openCV函数汇总3,视频P23-P35。
2023-09-30 17:37:41
80
原创 【笔记】出自【强推】B站公认讲的最好的openCV计算机视觉教程的openCV函数汇总2,视频P10-P22
【代码】【笔记】出自【强推】B站公认讲的最好的openCV计算机视觉教程的openCV函数汇总2,视频P10-P22。
2023-09-29 17:35:38
83
1
原创 【笔记】出自【强推】B站公认讲的最好的openCV计算机视觉教程的openCV函数汇总1,视频P1-P9
【代码】【笔记】出自【强推】B站公认讲的最好的openCV计算机视觉教程的openCV函数汇总1,视频P1-P9。
2023-09-27 16:50:48
233
1
原创 【图像分割】提取图像中的二维码
参数存在问题,导致无法解析。这个问题通常是由于参数类型不匹配或格式不正确引起的。图像中含有可识别的二维码:首先确保你的输入图像中确实包含一个可识别的二维码。图像质量:确保输入图像的质量足够好,没有过于模糊或损坏的部分。变量是正确的数据类型。以下是一个更新后的代码示例,尝试将。问题:给你一张带有二维码的图片,将其提取。为了更准确地解决问题,可以尝试确保。替换为实际图像文件的路径。函数时,传递给函数的。大概的意思是:在使用。
2023-09-09 11:50:03
848
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人