找到 510 篇文章 关于算法

使用哈希映射解决锁钥问题

Ankith Reddy
更新于 2020年6月17日 09:57:57

754 次浏览

给定不同锁的列表和不同钥匙的列表。我们的任务是从给定列表中找到锁和钥匙的正确匹配,并在匹配时将钥匙分配给锁。在这个方法中,我们将遍历所有锁并创建一个哈希映射,之后,在哈希映射中搜索每个钥匙。当钥匙匹配时,将其标记为有效钥匙并分配给锁。输入和输出输入:锁和钥匙的列表。lock = { ), @, *, ^, (, %, !, $, &, #} ... 阅读更多

螺母和螺栓问题

Samual Sam
更新于 2020年6月17日 09:56:52

2K+ 次浏览

给定不同螺母的列表和不同螺栓的列表。我们的任务是从给定列表中找到螺母和螺栓的正确匹配,并在匹配时将螺母分配给螺栓。这个问题通过快速排序技术解决。通过将螺栓的最后一个元素作为枢轴,重新排列螺母列表并获得螺栓为枢轴元素的螺母的最终位置。在对螺母列表进行分区后,我们可以使用选定的螺母对螺栓列表进行分区。对左右子列表执行相同的任务 ... 阅读更多

字典序最小字符串旋转

Samual Sam
更新于 2020年6月17日 10:03:27

545 次浏览

让我们考虑给定一个字符串,我们知道字符串是字符的序列。字典序旋转是字符串的旋转,将字符转换为字典序。解决方案很简单,我们只需将给定字符串与其自身连接起来,然后在另一个数组中存储所有字符串的旋转。之后按升序对数组进行排序,最低值就是最终结果。输入和输出输入:字符串“BCAAFAABCD”输出:旋转后的字符串:“AABCDBCAAF”算法minStrRotation(str)输入- 给定的字符串。输出-所需的最小字符串旋转。开始 n := str 的长度 定义 strArr 来存储所有旋转 tempStr := ... 阅读更多

数组中第 K 大的元素

Monica Mona
更新于 2023年1月4日 18:04:51

916 次浏览

从此数据集中,此算法将找到数组中第 k 大的元素。此问题可以通过对数组进行排序轻松解决。我们可以按升序或降序对它们进行排序。以降序解决它,我们可以得到前 k 个元素来找到我们的结果。输入和输出输入:数组的元素:{1, 23, 12, 9, 30, 2, 50, 63, 87, 12, 45, 21},K = 4 输出:4 个最大的元素是 87 63 50 45算法kthLargestElement(array, n, k)输入:数组、数组中的元素数量、位置 k。输出:显示最大的 ... 阅读更多

Jarvis 步进算法

Arjun Thakur
更新于 2020年6月17日 09:59:36

3K+ 次浏览

Jarvis 步进算法用于从给定的一组数据点检测凸包的角点。从数据集的最左点开始,我们通过逆时针旋转保持凸包中的点。从当前点,我们可以通过检查这些点相对于当前点的方向来选择下一个点。当角度最大时,选择该点。完成所有点后,当下一个点是起点时,停止算法。输入和输出输入:点集:{(-7, 8), (-4, 6), (2, 6), (6, 4), (8, 6), ... 阅读更多

Graham 扫描算法

Samual Sam
更新于 2020年6月17日 09:26:16

6K+ 次浏览

凸包是可以覆盖所有给定数据点的最小封闭区域。Graham 扫描算法将找到凸包的角点。在此算法中,首先选择最低点。该点是凸包的起点。其余 n-1 个顶点根据从起点的逆时针方向排序。如果两个或多个点形成相同的角度,则删除除距起点最远的点之外的所有相同角度的点。从剩余点中,将它们压入堆栈。并逐个从堆栈中删除项目,... 阅读更多

素数和为偶数

Ankith Reddy
更新于 2020年6月17日 09:27:18

1K+ 次浏览

从 4 开始的所有偶数都可以表示为两个素数的和。有时一个数字可以有多个素数组合的和。例如,数字 10 = (5 + 5) 和 (7 + 3) 此算法将找到给定数字的所有素数和组合。当一个数字 x 为素数时,我们只会检查 (number - x) 是否为素数,如果是,则 x 和 (number – x) 的和表示偶数。输入和输出输入:偶数:70 输出:素数和 70 = 3 ... 阅读更多

泛洪填充算法

Monica Mona
更新于 2020年6月17日 09:30:02

1K+ 次浏览

给定一个矩阵;该矩阵表示一个屏幕。屏幕的每个元素 (i, j) 都表示为一个像素,该像素的颜色用不同的数字标记。在此算法中,当像素已具有选定的先前颜色时,像素将填充新颜色。如果先前颜色不是先前颜色,则不会填充该像素。填充像素后,它将检查其上下左右像素以执行相同的操作。这个想法非常简单,首先,我们检查所选位置是否用... 阅读更多

数字到文字的转换

George John
更新于 2020年6月17日 09:28:45

2K+ 次浏览

此算法将给定数字转换为英文单词。例如,564 将是五百六十四。对于此算法,给出一些预定义的字符串,从该列表中,它将获取正确的单词以构成单词。这些列表如下所示单位:它将保存所有 (0 到 9) 的单词,例如零、一……九两位数:它将保存 (10 - 19) 的所有数字,例如十、十一……十九十倍数:对于十的倍数,(20-90),例如二十、三十……九十。十的幂:它是百和千,作为 10 的 2 次幂和 3 次幂输入和输出输入:数字:568 输出:五百六十八算法numToWord(num)有一些 ... 阅读更多

快速相乘两个数字的方法

Samual Sam
更新于 2020年6月17日 09:35:14

561 次浏览

给定两个数字作为二进制字符串,我们的任务是以更快更有效的方式找到这些数字的乘积结果。使用分治策略,我们可以以非常有效的方式解决问题。我们将数字分成两半。设 Xleft 和 Xright 是第一个数字 X 的两个部分,Yleft 和 Yright 是第二个数字 Y 的两个部分。所以产品;为了简单起见,我们可以执行此操作输入和输出输入:两个二进制数:1101 和 0111 输出:结果为:91算法addBitString(num1, num2)输入:要添加的两个数字。输出:添加后的结果 ... 阅读更多

广告