草庐IT

Algorithm

全部标签

php - 检查数组中的唯一值和非唯一值

我们希望获得包含完整信息的结果,例如Unique=Value1,Value2。重复=值1。我们有一个数组,下面提到了一个示例数组。$array1=array('JohnWilkins','PoulWarner','RodgerSmith','DavidBentham','DavidWilkins','BrianSmith','DavidWarner','JohnWilkins','PoulWarner','DavidWilkins','BrianSmith','DavidWarner','JohnWilkins','PoulWarner','DavidBentham','DavidWi

php - GOTO 是一个好习惯吗? (在这个 php 特殊情况下?)

我在向用户显示错误消息时遇到了一些问题。我使用两条Goto指令“解决”了这个问题。请看一下代码:Error!Yourprofilephotohavetobeapicturefile.");gotonomore;}$src_size=getimagesize($_FILES['avatar']['tmp_name']);if($src_size['mime']=='image/jpeg'){$src_img=imagecreatefromjpeg($_FILES['avatar']['tmp_name']);}elseif($src_size['mime']=='image/png'){

php - PHP explode/implode 的时间复杂度

我很想知道PHP对爆炸/内爆函数使用什么算法,它们的时间复杂度是多少?提前谢谢你。 最佳答案 在string.c你可以看到算法。它开始于大约1021line..if(p2==NULL){add_next_index_stringl(return_value,p1,Z_STRLEN_P(str),1);}else{do{add_next_index_stringl(return_value,p1,p2-p1,1);p1=p2+Z_STRLEN_P(delim);}while((p2=php_memnstr(p1,Z_STRVAL_P(

php - PHP 中的 Anagram 算法

我完全是PHP新手。今天我遇到了一个我不知道如何解决的问题,即使在搜索谷歌和挖掘SOF之后也是如此。这是Anagram算法。所以基本上,我理解这里的问题:当用户输入一个字符串时,我将它拆分并与我的库(给定数组)进行比较,然后我将不得不通过2-3-...等字符加入它以再对比一下,正是我现在卡住的地方,我不知道如何加入数组的元素。这是我正在实现的代码,还有一个示例字典。我有一个自制的字典,其中包含数组$dict中的这些元素。我有一个表单供用户输入字符串,输入的字符串将传递给下面的代码并声明为$anagram。我必须拆分输入的字符串以与我的字典进行比较。但是我不知道如何加入他们,比如比较2个

php - 用于大型数组的 php in_array 替代方案,用于避免重复条目

我需要生成从600k到2000k的大量随机数列表,但是列表不能有重复。我当前的“实现”如下所示:如果我保留in_array测试注释,处理时间大约为1秒,所以mt_rand调用和used数组填充相对“便宜”但是当我取消注释时in_array测试坏事发生了!(我只是在等待-已经超过10分钟-脚本终止...)所以我正在寻找重复检测方面或生成部分的替代方案(我如何生成随机数而不会有重复的风险)我愿意接受任何建议。 最佳答案 对于快速/肮脏的解决方案,使用/检查数组键是否可以提高您的速度?$used=array();for($i=0;$i

php - 数组数据的组合

这个问题在这里已经有了答案:Phprecursiontogetallpossibilitiesofstrings(6个答案)关闭9年前。有什么可以帮助我得到如下输出:一个:乙一个:丙广告一个:电子乙:丙乙:丁是c:d丙:乙d:电子一个:乙:丙一个:乙:丁一个:乙:乙一:丙:丁一:丙:乙一个:d:e乙:丙:丁乙:丙:乙乙:丁:乙c:d:eABCD一:乙:丙:乙一:乙:丁:乙一:丙:丁:乙b:c:d:ea:b:c:d:e数据数组$n=array('a','b','c','d','e');我试过这样的代码:for($a=0;$a';}}for($a=0;$a';}}}for($a=0;$a'

php - 如何检测当前日期是否大于日期时间?

实际上,我想创建一个函数,如果一天大于一天,它会返回日期,它应该返回1小时前的时间年龄。我已经完成了将近80%,以前的功能现在我想再添加一个功能。functiondateTimeExe($time){$time=time()-$time;//togetthetimesincethatmoment$tokens=array(31536000=>'year',2592000=>'month',604800=>'week',86400=>'day',3600=>'hour',60=>'minute',1=>'second');foreach($tokensas$unit=>$text){if

php - 在 PHP 中生成任意长度的有序(加权)组合

给定一个常用词列表,按使用流行程度排序,是否有可能按照“最常见”序列的顺序形成任意长度的词组合(任何所需的词数)。例如,如果最常见的单词是“a、b、c”,那么对于长度为2的组合,将生成以下内容:aaabbabbacbccacbcc这是长度为3的正确列表:aaaaababaabbbaababbbabbbaacabcbacbbcacaacbbcabcbaccbcccaacabcbacbbcaccbcccaccbccc这对于任意数量的元素的2或3个单词(设置长度)的组合实现起来很简单,但是对于任意长度可以做到这一点吗?我想在PHP中实现它,但非常感谢伪代码或算法摘要!

php - Python 或 PHP 中的感知哈希算法?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我已经暴露了viaStackOverflow至pHash,一个用于音频、视频、图像和文本指纹识别的C++感知哈希库-最近与PHP、C#和Java进行了初步绑定(bind)。我对研究这些算法很感兴趣,我想知道是否有相同/相似算法的任何开源纯Python或PHP实现?这会让我的生活轻松很多。

php,长而深的矩阵

我有一个又深又长的数组(矩阵)。我只知道产品ID。如何找到产品的途径?采样数组(但正如我所说,它可以很长很深):Array([apple]=>Array([new]=>Array([0]=>Array([id]=>1)[1]=>Array([id]=>2))[old]=>Array([0]=>Array([id]=>3)[1]=>Array([id]=>4))))我有id:3,我希望得到这个:苹果,老,0谢谢 最佳答案 你可以用这个宝贝:functiongetById($id,$array,&$keys){foreach($arra