- 博客(80)
- 收藏
- 关注
原创 毕设:大学社团管理系统
社团管理系统旨在为学校社团提供一个全面的管理平台,支持社团的日常运营、活动组织、成员管理以及财务管理。创建、更新、删除社团活动,管理活动状态(如待审核、进行中、已完成、已取消)和报名信息。管理社团的创建、更新、删除,查看社团基本信息(如名称、简介、预算等)。用户提交入团申请,社长审批,记录归档,审批通过后自动加入社团成员。可以管理自己负责的社团的信息、成员、活动和通知。管理社团成员的加入、移除,查看成员详细信息。可以管理所有社团、成员、活动、申请和通知。可以查看自己所在社团的通知和活动信息。
2025-03-01 02:54:51
360
原创 通过 HTTP 获取远程摄像头视频流并使用 YOLOv5 进行目标检测
通过合理的项目结构设计,我们将项目功能模块化,使代码更易于维护和扩展。每个功能模块都在独立的文件中实现,便于调试和修改。在模型加载方面,我们通过本地和网络模型的双重处理机制,确保了程序能够在缺少本地模型文件时自动下载并保存。希望这个项目结构能够帮助你更好地理解如何组织一个基于 YOLOv5 的目标检测项目,并且能够作为参考用于其他类似的深度学习应用中。
2024-11-11 15:22:48
2988
1
原创 训练营总结
但是背八股找实习的道路还很长,训练营确实是一个很好的平台,不仅可以在不断地重新开始录制复听应答情况,还能看到小伙伴们努力打卡的身影。有意思的是在背熟一道题之后加精上榜,我的名字能让所有人都看到,虽然没有找到校友也算是为争光hhhh。训练营准备的内容也很充分很全面,从计算机基础到中间件再到某个语言(Java)希望大家都能斩获心仪的offer。
2024-08-31 19:43:23
229
原创 回溯+记忆搜索——力扣每日一题2024.8.25
如果我们提前对 nums 数组排序,把大的数字排在前面,那么大的数字会先被分配到 bucket 中,对于之后的数字,bucket[i] + nums[index] 会更大,更容易触发剪枝的 if 条件。然后分成两种情况:。先说第一个解法,也就是从数字的角度进行穷举,n 个数字,每个数字有 k 个桶可供选择,所以组合出的结果个数为 k^n,时间复杂度也就是 O(k^n)。回溯算法会回溯到第一个桶,重新开始穷举,现在它知道第一个桶里装 1, 4 是不可行的,它会尝试把 2, 3 装到第一个桶里:。
2024-08-28 15:31:35
1149
原创 力扣每日一题-08.22
给定两个整数n和x,要求构造一个长度为n的正整数数组nums,其中:数组中的所有元素是严格递增的。数组中的所有元素按位与的结果等于x。返回数组nums中最后一个元素的最小值。题目要求构造一个严格递增的数组,同时满足数组中的x。如果所有数组元素的按位与结果要x,那么每个元素的二进制形式中的那些与x的二进制表示必须和x。这意味着:在x的二进制中为1的位置上,数组中的对应位置也1。对于x中为0的位,这些位可能在数组的某些元素中出现不同的值。
2024-08-22 21:57:41
1120
原创 状态压缩、记忆化搜索---蒙德里安的梦想
列状态的表示:每列的状态用二进制表示,位数等于行数N。列状态的合法性判断:每列必须能被1×2的长方形完全覆盖,空格数必须为偶数。状态转移的合法性判断:相邻列的状态不能冲突,且合并后的状态必须是合法的。通过DP递推解决:使用f[i][j]表示前i列状态为j的方案数,最终输出结果f[m][0]即为棋盘的合法分割方案数。
2024-08-22 02:34:23
931
原创 状态压缩DP---最短Hamilton路径
状态压缩:通过二进制位表示顶点访问的状态,状态总数为2^n。动态规划:利用表示当前状态为state并且最后访问点为j的最短路径长度,通过枚举状态和顶点进行状态转移。最终输出:通过获取所有顶点访问完后的最短路径。这个问题的难点在于如何使用状态压缩高效表示和转移状态。通过动态规划和状态压缩,我们可以在指数时间内解决这个 Hamilton 路径问题。我们来详细分析一下在这道题目中如何对state进行操作。state是一个二进制数,每一位(bit)表示一个顶点是否被访问过。例如:n = 4那么state。
2024-08-22 02:29:22
1251
原创 记忆化搜索与状态压缩:优化递归与动态规划的利器
记忆化搜索是一种递归与动态规划相结合的优化方法。它的核心思想是通过递归来解决问题,同时将已计算过的子问题结果保存起来(通常存储在数组或哈希表中),以便在后续调用时直接返回结果,避免重复计算。状态压缩的核心思想是将多个状态变量组合成一个数值或位掩码,以减少存储空间。例如,在图论问题中,可以用一个整数的二进制形式记录多个顶点的访问情况。这种方法通过紧凑的状态表示优化了存储效率,常用于处理复杂的动态规划问题。
2024-08-22 02:25:48
1710
1
原创 设计模式-策略模式
策略模式是一种行为设计模式,它定义了一系列算法,并将每一个算法封装起来,使它们可以互换。策略模式使得算法可以在不影响客户端的情况下发生变化。该模式的主要目的是让算法在运行时可以自由切换。策略模式提供了一种灵活的方式来定义一系列算法,并使它们可以互换。通过在项目中使用策略模式,我们可以在运行时根据不同的条件选择不同的处理策略,增强系统的灵活性和可维护性。在本文中,我们通过购物优惠系统和反向压力机制两个实例,详细介绍了策略模式的定义、优缺点、应用场景以及具体实现。希望这篇博客能帮助你更好地理解和应用策略模式。
2024-08-05 09:44:34
835
原创 设计模式-代理模式
代理模式 | 菜鸟教程 (runoob.com)代理模式提供了一个代理对象,控制对其他对象的访问。代理对象可以在不改变真实对象的情况下,添加额外的功能或控制。访问控制:控制对资源的访问权限。性能优化:在实际使用时才创建和初始化资源。日志记录:记录对真实对象的操作日志。远程代理:控制对远程对象的访问。小明想要购买一套房子,他决定寻求一家房屋中介来帮助他找到一个面积超过100平方米的房子,只有符合条件的房子才会被传递给小明查看。【设计模式专题之代理模式】7-小明买房子 (kamacoder.com)
2024-08-04 18:02:25
940
原创 细水长流vs极限挑战:哪种成长方式更高效?
对于持续的成长它的状态会是长期的一贯不变会让人有倦怠感,而起伏的学习会让人常常逼近某种极限就想运动和健身一样,只有不断的冲击极限才能快速的成长。我想:我一直认为一步一个脚印稳步前进是一个好的学习和成长的方式,我对于起伏的状态是不喜欢的。然后昨晚回去我勉强撑着把澡洗了然后上床,身上的每一块肌肉只要一用力就抽筋,算是体验了一次生理上的“濒死”,我不知道这从医学上来讲对我的身体健康是否会有不好的影响?但是到了总里程的差不多3/4我实在顶不住了,脑袋晕晕的浑身没劲然后我歇了大约半个钟头稍微好点了才继续走的。
2024-08-04 16:18:22
238
原创 设计模式-单例模式
通过这个例子,我们不仅理解了单例模式的基本概念和实现方法,还学习了如何选择合适的数据结构来解决实际问题。的使用保证了插入顺序,从而满足了按顺序输出商品清单的需求。同时,线程安全的单例模式确保了购物车管理器在多线程环境下的正确性。希望通过这个案例,大家能更好地掌握单例模式及其在实际开发中的应用。
2024-08-04 09:43:33
1250
原创 力扣每日一题1186. 删除一次得到子数组最大和【动态规划】
dp[i][0]表示以第i个元素结尾且未删除元素的子数组的最大和。dp[i][1]表示以第i个元素结尾且删除了一个元素后的子数组的最大和。
2024-07-21 16:02:44
408
原创 目标和问题:从回溯到动态规划的旅程
定义dp[i][j]表示使用前i个数字,是否可以组成和为j的子集数。状态定义dp[i][j]表示使用前i个数字,是否可以组成和为j的子集数。状态转移方程:通过递推关系,逐步求解子问题,从而解决原问题。从后往前遍历:确保在计算新的dp[j]时,dp[j]和仍然是上一轮循环的结果,避免在当前轮次中使用已更新的值。从前往后遍历:可能会使用当前轮次已经更新的,导致错误的结果。希望这个解释能够帮助你更好地理解为什么在一维动态规划中需要从后往前遍历。如果还有任何问题,请随时告诉我!
2024-07-04 18:02:46
989
原创 力扣每日一题(2024-06-14)2786. 访问数组中的位置使分数最大
给定一个下标从 0 开始的整数数组 和一个正整数 。你一开始在数组的第 0 个位置,你可以移动到满足 的任意位置 。如果你访问的位置 ,你可以获得分数 。如果从位置 移动到位置 且 和 的奇偶性不同,那么你将失去分数 。请返回你能得到的最大得分之和。我们需要用动态规划来解决这个问题,通过维护一个状态数组来记录在不同奇偶性下的最大得分。具体地:状态定义: 表示当前最后一个元素为偶数时的最大得分。 表示当前最后一个元素为奇数时的最大得分。状态初始化:初始情况下,你在位置 ,所以得分为 。根据 的奇
2024-06-14 10:04:20
537
3
原创 力扣每日一题(2024-06-13)2813. 子序列最大优雅度
基于官方题解,进行补充说明给你一个长度为n的二维整数数组items和一个整数k。,其中profiti和categoryi分别表示第i个项目的利润和类别。现定义items的的可以用计算,其中是子序列中所有项目的利润总和,是所选子序列所含的所有类别中不同类别的数量。你的任务是从items所有长度为k的子序列中,找出。用整数形式表示并返回items中所有长度恰好为k的子序列的最大优雅度。数组的子序列是经由原数组删除一些元素(可能不删除)而产生的新数组,且删除不改变其余元素相对顺序。17。
2024-06-13 15:41:22
1098
原创 力扣 437. 路径总和 III
前缀和的使用前缀和表示从根节点到当前节点路径上所有节点值的累加。用记录路径和及其出现的次数,通过这种方式可以在 O(1) 时间内检查某个路径和是否存在。路径不需要从根节点开始通过记录每个节点的路径和,并检查是否在中,可以判断从某个之前的节点到当前节点的路径和是否等于targetSum。路径不需要在叶子节点结束递归遍历每个节点,包括中间节点,通过检查路径和的差值,可以识别路径和为targetSum的路径,不论它是否在叶子节点结束。回溯。
2024-06-12 21:05:05
625
1
原创 代码随想录算法训练营(JAVA)| 第七章 回溯算法part03
切割问题可以抽象为组合问题如何模拟那些切割线切割问题中递归如何终止在递归循环中如何截取子串如何判断回文切割过的地方不能重复切割所以递归函数需要传入i + 1。
2024-03-18 12:39:35
842
原创 代码随想录算法训练营(JAVA)| 第六章 二叉树part08
力扣236. 二叉树的最近公共祖先,235. 二叉搜索树的最近公共祖先,701. 二叉搜索树中的插入操作,450. 删除二叉搜索树中的节点
2024-03-13 03:41:21
983
原创 代码随想录算法训练营(JAVA)| 第六章 二叉树 part06
力扣654. 最大二叉树,617. 合并二叉树,700. 二叉搜索树中的搜索,98. 验证二叉搜索树
2024-03-11 15:00:19
953
原创 代码随想录算法训练营(JAVA)| 第六章 二叉树 part05
力扣513. 找树左下角的值, 112. 路径总和,113. 路径总和 II,106. 从中序与后序遍历序列构造二叉树
2024-03-10 18:38:07
617
原创 代码随想录算法训练营(JAVA)| 第六章 二叉树 part02
力扣102. 二叉树的层序遍历, 226. 翻转二叉树, 101. 对称二叉树
2024-03-07 15:17:02
599
原创 代码随想录算法训练营(JAVA)| 第六章 二叉树part03
力扣104. 二叉树的最大深度, 559. N 叉树的最大深度,111. 二叉树的最小深度,222. 完全二叉树的节点个数
2024-03-07 15:15:27
499
原创 力扣 4. 寻找两个正序数组的中位数
因此,我们可以安全地排除 (A) 中的前 (k/2) 个元素,然后在剩下的元素中寻找第 (k - k/2) 小的元素。由于 (A[k/2 - 1]) 小于 (B[k/2 - 1]),我们可以确定,在 (B) 数组中至少有 (k/2) 个元素是大于 (A[k/2 - 1]) 的。这里的关键点是,如果 (A[k/2 - 1]) 小于 (B[k/2 - 1]),那么 (A[k/2 - 1]) 以及它之前的所有元素(共 (k/2) 个元素)都不可能是第 (k) 小的元素。:根据比较结果,我们排除一部分元素。
2024-03-06 01:33:59
1288
原创 代码随想录算法训练营(JAVA)| 第六章 二叉树part01
力扣144. 二叉树的前序遍历,94. 二叉树的中序遍历,145. 二叉树的后序遍历
2024-03-05 12:46:00
738
原创 代码随想录算法训练营(JAVA)| 第五章 栈与队列part02
力扣20.有效的括号1047.删除字符串中的所有相邻重复项150.逆波兰表达式求值
2024-03-02 14:50:04
755
原创 代码随想录算法训练营(JAVA)| 第四章 字符串part02 DAY08
力扣28. 找出字符串中第一个匹配项的下标, 459. 重复的子字符串
2024-02-29 10:52:10
305
原创 代码随想录算法训练营(JAVA) |第四章 字符串part01 DAY07
力扣344. 反转字符串,541. 反转字符串 II,54. 替换数字,151. 反转字符串中的单词,55. 右旋字符串
2024-02-28 18:53:07
725
原创 代码随想录算法训练营(JAVA) | 第三章 哈希表part02 DAY06
力扣454. 四数相加 II,383. 赎金信,15. 三数之和,18. 四数之和
2024-02-27 10:52:27
445
原创 代码随想录算法训练营(JAVA) | 第三章 哈希表part01 DAY05
力扣242. 有效的字母异位词,349. 两个数组的交集,202. 快乐数,1. 两数之和
2024-02-26 19:08:23
634
原创 代码随想录算法训练营(JAVA) | 第二章 链表part02 DAY04
力扣24. 两两交换链表中的节点,707. 设计链表面试题 02.07. 链表相交707. 设计链表,19. 删除链表的倒数第 N 个结点,142. 环形链表 II
2024-02-26 14:49:19
493
原创 代码随想录算法训练营(JAVA) | 第二章 链表part01 DAY03
力扣 203. 移除链表元素,707. 设计链表,206. 反转链表
2024-02-25 21:44:06
266
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅