Tag: 算法

关于如何使我的算法更快的建议

这是我在C中的代码来自项目-Euler的问题#3,在那里我必须找到最大的素数因子600851475143。 #include #include bool is_prime(long int number){ long int j; for (j=2; j1; factor–){ if (input%factor==0 && is_prime(factor)) { ans = factor; break; } } printf(“%d\n”, ans); system(“pause”); return 0; } 虽然它适用于小数字,但逐渐需要花费越来越多的时间来给出答案。 最后,对于600851475143,代码返回0,这显然是错误的。 有人可以帮忙吗? 非常感谢。

找出一个数字是否有P ^ Qforms?

我最近出现了在线编码测试。 我被打了一个问题,即 给出数字N,发现上述数字是否是P ^ Q(P power Q)forms。 我使用Brute force方法(满足个别号码)来解决这个问题,但结果是超时。 所以我需要高效的算法。 输入:9 out put:是的 输入:125 out put:是的 输入:27 out put:是的 约束:2 <N <100000

素数算法

谁能告诉我如何在C中实现Eratosthenes算法的Sieve ? 我需要生成素数但我的算法很慢。 我的代码: #include int prime(long int i) { long int j; int state = 1; for(j=2;j<i;j++) { if((i%j)==0){state=0;break;} } return state; } int main() { int t; long int m,n,i; scanf("%d", &t); while(t–) { scanf("%d %d", &m,&n); for(i=m;i<=n;i++) { if(i==1){ //do nothing for 1 } else{ if(prime(i))printf("%d\n",i); } } } return 0; } […]

从C中的字符串中删除多余的空格

我有这个字符串 “go for goa” 输出应该是 “go for goa” 我想删除多余的空格。 这意味着应该用一个空格替换两个或多个连续的空格。 我想使用就地算法来做到这一点。 下面是我尝试的代码,但它不起作用: #include #include #include /* Function to remove spaces in an string array */ char *removeSpaces(char *str) { int ip_ind = 1; /* In place removal of duplicate spaces*/ while(*(str + ip_ind)) { if ((*(str + ip_ind) == *(str + ip_ind – 1)) && […]

在B树中找到第k个密钥的算法?

我试图理解如何考虑在B树中获取第k个键/元素。 即使它是步骤而不是代码,它仍然会有很多帮助。 谢谢 编辑:为了清理,我要求B树中的第k个最小的键。

对于字符串,查找和替换

查找一些文本并将其替换为C字符串中的新文本可能比预期的要复杂一些。 我正在寻找一种快速且时间复杂度较小的算法。 我该怎么用?

C – 反转一个数字

我在Linux上用C编码,我需要反转一个数字。 (EG:12345将变成54321),我只是将它转换为使用itoa的字符串然后反转,因为它可能更容易使用字符串操作,但事实certificateitoa是非标准的并且不包括在内在gcc。 有没有办法在十进制数字上做二进制旋转样式的事情,如果不是我应该采取什么方法?

如何使用合并排序删除重复项?

我使用递归合并排序来排序链接列表,但在合并排序期间我想删除重复项。 任何人都知道如何实现这一目标? 我正在使用C代码。

如何在C或C ++中的O(n)中删除数组中的重复元素?

有没有什么方法可以在O(n)中的C / C ++中删除数组中的重复元素? 假设元素是a[5]={1,2,2,3,4}那么结果数组应该包含{1,2,3,4}解决方案可以使用两个for循环来实现,但那将是O(n ^ 2)我相信。

找到包含所有矩形的最小区域

这是一个面试问题。 我们给出了各种矩形的尺寸,我们必须找出可以包围所有矩形的矩形区域(最小值)? 矩形也可以旋转。 test case:- input: 3 //number of rectangles 8 8 4 3 3 4 output: 88 11×8: + – – – – – – + + – + | | | | | | | | | | + – + | | + – + | | | | | | | […]