divide-and-conquer 相关问题

“分而治之”是一种自上而下的技术,用于设计算法,包括将问题划分为较小的子问题,希望子问题的解决方案更容易找到,然后将部分解决方案组合成原始问题的解决方案。

递归关系中的混淆。时间复杂度将为O(n)或O(nlogn)

重复将如上所述,为T(n)= 2T(n / 2)+ O(1)。 f(n)如何是O(1)而不是O(n)。我们可以只分割而没有合并来划分和同意吗?即使Combine在函数中不可见,我还是...

回答 1 投票 0


算法:试图从| A [i]-i | <= log(N)中具有分治法的c]

[输入:排序后的数组A(所有元素都是整数,并且以递增顺序不同)和c(整数)]输出:返回随机选择的索引,以使该索引满足要求:| A [i] -i | <= ...

回答 1 投票 0

迭代,自下而上,分而治之算法

我正在阅读LeetCode上有关通用算法问题的文章“最长通用前缀”。它们显示了几种不同的方法,但是我的问题仅与“分而治之”有关。它的...

回答 1 投票 1

如何通过分治法来解释最小-最大比较中的非整数数?

对于朴素的方式,min-max比较2n-2倍,而对于分治法,它比较(3/2)n-2倍。恰好少了(1/2)n个比较。如何解释(1/2)比较?我是...

回答 1 投票 1

阵列中的分治算法最大数目

我是分割和征服算法的新手,需要构造一个算法才能找到数组中的最大数目。下面是我的代码,我了解我需要将数组分为2部分,然后递归查找...

回答 1 投票 0

我设计了算法并实现了代码,但我不知道代码的时间复杂度T(n)= O(??)

我使用了很多for循环来获取壁橱中较小和较大的元素,因此,我很难分析这段代码的时间复杂度。我定义了一个名为FindClosetLagerAndLower的函数,...

回答 1 投票 0

我如何使用分而治之的方法解决FindMaximumSubarray的重复错误?

这是我的findMaximumSubarray的解决方案,我遵循CLRS伪代码算法,但遇到此递归错误,我试图找出原因,但没有解决!我不明白这部分内容...

回答 1 投票 0

要求您在A [关闭]中找到第二个最大数字

给出n => 2个正整数的数组A,要求您找到A中的第二个最大值。设计一个分治法来解决该问题。证明您的算法正确。 ...

回答 1 投票 -1

分而治之气泡排序算法

[这学期我们学习了分而治之,其中将问题分为子问题,然后像合并排序或快速排序一样解决了。虽然我没有发布此问题以获取...

回答 2 投票 0

了解最近对分治算法

我是编码的新手,今天我完成了二维空间中最近对问题的平凡解决方案。 (2个循环)但是我放弃了在O(n log n)中可以找到的任何解决方案。甚至...

回答 1 投票 0

使用分治和中位数从未排序的数组中找到缺失的数字

假设我们有一个未排序的数组,其中的数字从0到n(n = 2 ^ k-1,k是一个整数)除外。我的目标是找到丢失的号码。我知道XOR方法或sum方法。但是,...

回答 1 投票 0

使用递归查找最大乘积

我看到一个问题,我想知道是否有可能使用递归来解决它。步骤如下:编写一种算法,当给定输入数组时,可从...

回答 5 投票 0

有效的分治算法

[在政治事件中,介绍2个人确定他们是否代表同一政党。假设n个参与者中有一半以上代表同一方。我正在尝试找到高效的...

回答 1 投票 0

我如何解决这个Tromino平铺问题?

我正在尝试解决n x n板的Tromino平铺问题。给定n x n木板中缺少x和y的方形坐标(MS),我们必须用'L'形瓷砖填充木板的其余部分。我有...

回答 1 投票 2

为什么python列表显示切片异常?

[我试图递归地划分列表元素(就像在分而治之一样),因此打印切片的元素,但突然看到意外的异常(在第6行及以后的位置……)>

回答 1 投票 -1

确定性选择算法的递归关系

存在线性时间确定性算法供选择。我阅读了此链接,分而治之的方法看起来像这样:T(n)<= 12n / 5 + T(n / 5)+ T(7n / 10)但是,我不...

回答 1 投票 0

确定哪种方法最适合比较排序算法。小数据收集的分而治之或雇用问题

[这是我面临的问题,我们有25种独特的材料属于同一个类别,并且希望从这25种材料的有效性中找出前3种。不幸的是,我们...

回答 1 投票 0

使用分而治之的多数元素

我想使用分而治之算法从列表中找到多数元素。我使用以下解决方案在Leetcode上看到了以下代码:类解决方案:def mostElementElement(self,nums,lo = 0,hi = None):...

回答 1 投票 0

此Java while循环在合并排序中做什么?

第一步和第二步(第三步)似乎在不断重复着我。为什么要这样编程? int i = 0,j = 0; int k = l;而(i

回答 2 投票 2

© www.soinside.com 2019 - 2024. All rights reserved.