我最近在业余时间学习了不同的算法,我遇到的一个看起来非常有趣的算法叫做超级日志算法——它估计一个列表中有多少独特的项目。 这对我来说特别有趣,因为它让我回到了我的MySQL时代,那时我看到了“基数”值(直到最近我一直认为它是计算出来的,不是估计出来的)。 所以我知道如何用O(n)编写一个算法,计算数组中有多少个唯一项。我是用JavaScript写的: 但问题是,我的算法虽然是O(n),但使用了大量
我在熊猫数据框上有一个时间序列,它与月份成一行。我打电话给df1。然后我得到组的月平均值,我把df2称为结果数据帧。现在我想减去每个列的月平均值,而不使用循环。也就是说,需要从df1中“月”==1的所有行中减去df2中的行“月==1”。 在numpy中,我将重塑矩阵,执行操作(由于numpy广播),然后再次重塑矩阵。但我不知道什么是泛张力的方法。尽管我觉得这应该是一个非常简单的方法。 这里有一个例
我最近已经解决了名为“康威的人生游戏”的有趣的黑客问题问题陈述如下: 《生命的游戏》是一款由英国数学家约翰·霍顿·康威设计的细胞自动机游戏。最初的游戏是零人游戏。它的发展完全取决于它的投入。 生命游戏在2D网格上进行。网格中的每个单元格将处于两种可能状态之一, 活死人细胞的出生或死亡是基于以下规则。 如果一个细胞正好被3个活细胞包围,它就会从死细胞转换为活细胞。如果一个细胞被2或3个活细胞包围,它
我正在尝试用alpha-beta剪枝实现一个用于tic-tac-toe的minimax算法。现在我有程序在运行,但它似乎不起作用。每当我运行它时,它似乎会在所有的方块中输入垃圾。我已经实现了它,所以我的minimax函数接受一个棋盘状态,并修改该状态,以便当它完成时,棋盘状态包含下一个最佳移动。然后,我将“this”设置为与修改后的电路板相等。以下是我的minimax算法函数: 如果有人想尝试运行
我想用js制作一个小脚本,有一个用户列表,一个用户必须向另一个用户赠送礼物。 通过应用以下约束: > 如果“a”是圣诞老人,给“c”送礼物,那就不能反过来了。所以“c”不可能是“a”的圣诞老人。 它必须同时处理偶数和奇数用户。 在你看来,什么是正确的方法来尽量减少比较的数量,也就是说,加快脚本的速度。 我本来想这样开始,但后来我不知道该怎么做:
我有个小问题。我尝试实现合并排序算法递归。 现在我的问题: 左=合并排序(rrays.copyOfRange(iv_sort_list,0,iv_sort_list.length));右=合并排序(rrays.copyOfRange(iv_sort_list,iv_sort_list.length,iv_sort_list.length)); 如果我尝试分配我的左/右数组“mergeSort(..
(这不是一个复制品)我们有一个2D迷宫,四面都有X,还有内部的方块<迷宫的所有这些特征都存储在2D数组中。程序必须找到从开始“S”到目标“G”的路径。为此,将使用一个名为“solve(int row,int col)”的布尔方法,并使用“S”的行和列索引初始化该方法。算法必须是递归的。如果它能够找到通往“G”的路径,那么它应该返回true,否则返回false。下面是我试图解决这个问题的方法,它显示
我将介绍Tarjan的算法,用于使用DFS在图中找到连接点。 好的。现在是基本条件? 这也很容易理解:如果连接到u的顶点v已经被访问过(检查与此elif对应的If条件)“不知何故”,并且v不是u的父级,那么更新low[u]以包括disc[v]。 现在我的问题是:
我需要在MATLAB中实现一个基于连通分量算法原理的图像分割函数,但需要做一些修改。这是为了非常简单的2D图像,有一个背景颜色和一些不同颜色的对象。 其思想是,将图像作为一个矩阵,我提供了一个选择背景颜色的工具(它将对每个图像变化)。然后,当图像的背景颜色的值被选中时,我要对图像中的所有对象进行分割,结果应该是一个带标签的矩阵,图像大小相同,背景为0,每个对象有不同的数字。 这是我的意思的一个生动
我正在寻找一个快速的算法: 我有一个大小为n的int数组,目标是在数组中找到所有模式, 例如,我知道有一个大小为3的int数组是,那么只有一种可能性:12=3(考虑12=21) 我正在考虑实现对和Hashmap来使算法快速。(我现在得到的最快的仍然是 请分享你对这个问题的看法,谢谢
我正在编程一个简单的绘画应用程序使用Java。我试图使用洪水填充算法的递归实现作为我的“桶填充”工具。 我想知道是否有一种方法仍然使用递归与这个算法,而不得到这个错误。 如果没有,这个算法有哪些可能的非递归实现,我可以在我的程序中使用?
我正在为Dikjstra算法做一个优先级队列。我目前在插入方法上有麻烦。我包含了整个类的代码,以防你需要更好地了解我想完成的事情。我将堆索引放在一个数组列表(heapIndex)中,堆放在另一个数组列表中。 那是我运行程序后的输出(值,优先级,堆索引)。*(-1)表示heapIndex中的空单元格。
我一直在研究递归,并试图解决背包问题[https://en.wikipedia.org/wiki/Knapsack_problem]。我想出了下面的算法,它工作得很好: 这里奇怪的是,只有当调用初始函数的重量为,并且时,才会出现这种行为。 谢谢, D_Darric
我正在做一个个人项目,试图找到一个人的长相,因为数据库中有其他人的照片,所有照片都是以一致的方式拍摄的——人们直视相机,表情中立,不歪头(想想护照照片)。 我有一个系统,用于在人脸上放置二维坐标的标记,我想知道是否有任何已知的方法可以在这种方法下找到一张相似的脸? 我找到了以下面部识别算法:http://www.face-rec.org/algorithms/ 但是,没有一个专门负责寻找相貌相似的