
算法
文章平均质量分 68
常见算法知识
dev.null
这个作者很懒,什么都没留下…
展开
-
待排序元素规模较小时,宜选取哪种排序算法效率最高
当待排序元素规模较小时,通常选择以下几种。原创 2025-04-11 21:29:13 · 395 阅读 · 0 评论 -
牛客网发送笔试链接后企业可以修改题目吗?还没开始的考生是否是新的题目?
企业是否能在发送笔试链接后修改题目,主要取决于笔试是否已开始及企业的后台权限。未开始的考生可能接收到新题目,而已进入考试的考生通常不受影响。建议考生及时关注企业通知,以获取最新考试信息。原创 2025-03-14 21:58:22 · 270 阅读 · 0 评论 -
测试开发和开发的区别
测试开发和开发都属于软件研发领域的重要岗位,前者更注重保障质量、发现问题、优化流程;后者更注重实现功能、搭建架构、提供解决方案。随着软件行业对质量和效率的要求越来越高,测试开发与开发的边界也逐渐模糊。DevOps、持续交付以及持续测试等理念的兴起,要求测试和开发进行更紧密的协作与融合。不管是选择测试开发还是开发方向,都需要持续提升技术能力与业务理解,同时保持学习和创新的精神,才能在快速迭代的行业环境中不断取得进步。原创 2025-01-11 22:43:13 · 808 阅读 · 0 评论 -
经典编程题:服务器广播
O(N²)O(N²)这种复杂度在 N 的范围内(1 ≤ N ≤ 50)是可以接受的,因为 N 的上限相对较小,不会导致性能问题。确定某个元素属于哪个集合。将两个集合合并成一个。为了优化并查集的性能,通常会使用**路径压缩(Path Compression)和按秩合并(Union by Rank)**技术。原创 2025-01-09 22:30:25 · 1022 阅读 · 0 评论 -
给定一个字符串,对该字符串进行删除操作,保留 k 个字符且相对位置不变,使字典序最小
我们定义一个二维数组dp[i][j]表示从字符串的前i个字符中,选择j个字符所能获得的字典序最小的字符串。i是字符串前缀长度;j是要保留的字符个数;dp[i][j]表示从前i个字符中选j个字符的最优解(字典序最小)。如果问题的输入规模较小,可以使用动态规划方法。如果需要更高效的实现,单调栈是更优的选择,时间复杂度为 O(n),空间复杂度为 O(k)。原创 2025-01-09 22:26:44 · 1166 阅读 · 0 评论 -
上海机场联络线完全可以设计成不出站换乘地铁
由于机场联络线和普通地铁在运行速度和路线上有着明显差异,当乘客从任意两个站点出入时,可以通过乘客花费的时间自动识别出乘客是否乘坐了机场联络线,甚至可以识别出哪一段路乘坐了机场联络线,哪一段路乘坐了普通地铁。虽然由于乘客的等车时间、换乘时间的差异,可能会导致一定的误差,但是智能算法能够将这些误差都考虑在内,不会出现误判的情况。机场联络线和普通地铁的票价差异并不必然导致乘客必须出站重新计费。通过这样的自动计算票价的机制,乘客可以实现真正的无缝换乘,无需担心额外的操作步骤和时间浪费,从而提高整体出行效率。原创 2024-12-28 18:49:12 · 435 阅读 · 0 评论 -
服务器广播算法
服务器广播算法(Server Broadcasting Algorithm)是一种在分布式系统中用于高效地将信息从一个服务器传播到整个网络的算法。它被广泛用于分布式计算、数据中心、内容分发网络(CDN)和消息队列系统中。原创 2024-12-28 11:45:53 · 877 阅读 · 0 评论 -
聚类的主要算法和介绍
聚类是一种无监督学习算法,用于将数据集划分为多个组(或簇),使得同一簇内的数据点更相似,不同簇之间的点差异更大。选择算法时应根据数据分布特性、规模和具体任务需求进行权衡。原创 2024-12-27 22:29:57 · 1084 阅读 · 1 评论 -
算法工程化工程师
算法工程化工程师是一种结合算法研究与工程开发能力的技术职位,主要职责是将算法从理论研究到实际落地,应用到各种工业或商业场景中。原创 2024-12-26 22:25:48 · 565 阅读 · 0 评论 -
Yao的百万富翁问题
(Yao’s Millionaires Problem)是一个经典的密码学和计算复杂性问题,由计算机科学家姚期智(Andrew Yao)在1980年代提出。该问题主要探讨如何在不泄露个人私有信息的情况下进行计算和比较。原创 2024-10-15 09:41:12 · 620 阅读 · 0 评论 -
已知文档被分成几个区块,一些行被改动,现在要求把有改动的区块找出来应该怎么做
标记可以采用不同的方式,例如添加特殊的HTML标记、突出显示或在UI中进行可视化标记。要找出文档中被修改的区块,您可以使用文本比对(text diff)算法来比较原始文档和修改后的文档,并找到差异。使用文本比对算法,比较原始文档和修改后的文档的每个区块。该算法可以帮助找到两个文本之间的不同之处。根据文档的复杂性和差异性,文本比对可能需要更复杂的处理和算法来识别区块和改动。首先,您需要将文档分成适当的区块,这可以根据文档的特定规则或标志来完成。每个区块应该是一个较小的文本片段,例如段落、章节或自定义的块。原创 2023-10-10 21:31:11 · 124 阅读 · 0 评论 -
高维空间中的快速最近邻和查找技术——Kd-Tree
本文介绍一种用于高维空间中的快速最近邻和近似最近邻查找技术——Kd-Tree(Kd树)。Kd-Tree,即K-dimensional tree,是一种高维索引树形数据结构,常用于在大规模的高维数据空间进行最近邻查找(Nearest Neighbor)和近似最近邻查找(Approximate Nearest Neighbor),例如图像检索和识别中的高维图像特征向量的K近邻查找与匹配。本文首先介绍Kd-Tree的基本原理,然后对基于BBF的近似查找方法进行介绍,最后给出一些参考文献和开源实现代码。一、Kd-t转载 2023-07-09 14:07:28 · 1171 阅读 · 0 评论 -
Python的list.sort()和sorted()采用的排序方法——Tim排序
可以理解为改进的归并排序,结合了插入排序,发挥出插入排序对于已经接近排好序的对象的优势,此时时间复杂度可以达到O(n)。原创 2023-04-09 20:51:06 · 119 阅读 · 0 评论