草庐IT

模拟退火算法

全部标签

javascript - 绘制具有厚度/宽度的线的算法

我正在寻找一种绘制具有一定粗细的线条的快速算法。线条不必抗锯齿,速度优先。像这样相当简单的东西就足够了:用例是一个Javascript游戏,蠕虫会留下痕迹。(HTML5Canvas明显画线,但是getImageData()很慢,碰撞检测也很慢)在过去的2.5小时内,我找不到执行此操作的任何东西。是的,我知道关于SO的问题几乎相同,实际上有很多,但没有一个有可行的解决方案。我目前唯一的解决方案是沿着Bresenham线画圆,这不是很有效。一些代码(伪代码、JS或至少一篇文章的链接)会很棒。 最佳答案 http://members.ch

javascript - Node.js Nock模拟请求超时及后续成功

我正在尝试模拟服务请求超时以测试Node请求重试模块,该模块允许您指定请求最大尝试重试次数和重试延迟。为了对此进行测试,我需要使用nock模拟前X个请求的超时,然后成功响应同一个请求。我知道有'socketDelay()'方法可以延迟连接,但如何在第一次延迟响应后指定成功响应?我有这个,它模拟第一个请求的超时//delaysthefirstrequest'sresponseby1500nock(urlHost).post('/'+uriPath).socketDelay(1500).reply(200,'responsebody');但是我怎样才能让它在模拟服务恢复之后更快地响应呢?我

javascript - 什么是最好的 javascript 自动建议搜索算法

假设我有一个对象:varnames=["john","jane","al","mary","zane"...1000+Names]我想创建一个自动建议来搜索这些名称。最有效的方法是什么?我读过创建一个trie或三元数据结构是最好的,但我不确定如何在js中实现这些。有什么想法吗? 最佳答案 trie将是一个很好的解决方案。您的数据集看起来像这样:{"j":{"a":["jacob","jane",..],{"o":["john","joesph",..],..};您将逐个字符地索引尽可能深的层次(以便最内层的数组可能有20-30个条目

javascript - 是否可以使用 Jquery 模拟 Ctrl+F 组合键?

我有一个包含很多信息的页面,如果用户单击链接并弹出浏览器搜索栏,就像他们按下Ctrl+时那样,那就太好了F。我可以查询数据库,因为信息来自那里,但我不想在链接点击时重新加载页面。 最佳答案 一些浏览器支持window.find() 关于javascript-是否可以使用Jquery模拟Ctrl+F组合键?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/7338744/

javascript - 自动放置流程图形状的算法

我的团队需要使用HTML5Canvas或D3库(或其他更合适的工具,欢迎提出建议)用JavaScript构建流程图生成器。流程图将从JSON文档中定义的有向图生成。我的问题如下:我们可以使用哪种标准算法来促进流程图中形状(图中节点)的自动放置,以最大限度地减少重叠连接的数量及其长度? 最佳答案 对于这类问题,力导向算法并不是最优的。我宁愿建议使用分层图绘制(http://en.wikipedia.org/wiki/Layered_graph_drawing)算法。这种算法的一个很好的JS实现是Dagre(https://github

YMatrix + PLPython替代Spark实现车联网算法

PySpark算法开发实战一、PySpark介绍Spark是一种快速、通用、可扩展的大数据分析引擎,PySpark是Spark为Python开发者提供的API。在有非常多可视化和机器学习算法需求的应用场景,使用PySpark比Spark-Scala可以更好地和python中丰富的库配合使用。使用Python开发Spark需要使用到pyspark,pyspark是Spark为Python开发者提供的API。pyspark使用Py4J库,使得Python可以使用JVM对象。二、运行环境搭建操作系统CentOSLinuxrelease7.8.2003(Core)Java1.8.0_151Python

javascript - 在 Javascript 中模拟 map /集合

我有一个json对象,例如box={};,我将继续向其添加键值,例如box['somename']=somevalue。somename可能会重复,我希望最后一个实例的值获胜。这一切都很好。现在我需要对它进行操作,就好像它是一个数组一样。基本上,现在我有了一组唯一键,我想要一个主要操作box.length来查看有多少个唯一元素。是否有一种优雅的恒定时间方法可以在不遍历该对象的所有属性的情况下执行此操作? 最佳答案 varbox={length:0,add:function(k,v){if(typeofthis[k]==='undef

javascript - 模拟/ stub 构造函数

我有以下代码:classClientsconstructor:->@clients=[]createClient:(name)->client=newClientname@clients.pushclient我正在用JasmineBDD像这样测试它:describe'TestConstructor',->it'shouldcreateaclientwiththenamefoo',->clients=newclientsclients.createClient'Foo'Client.should_have_been_called_with'Foo'it'shouldaddFootocli

javascript - 在 react 元素上模拟点击事件

我正在尝试模拟.click()event在React上元素,但我不知道为什么它不起作用(当我发射event时它没有反应)。我想仅使用JavaScript发布Facebook评论,但我卡在了第一步(在.click()元素上执行div[class="UFIInputContainer"])。我的代码是:document.querySelector('div[class="UFIInputContainer"]').click();这是我尝试执行此操作的URL:https://www.facebook.com/plugins/feedback.php...附言我对React没有经验,我真的不

MD5加密算法

我们在平时做项目的时候,需要用到一些算法,将一些重要信息加密,MD5加密算法具有不可逆性,只能加密,但是解密非常困难,我们在程序中可以这么去写。Stringpassword=employee.getPassword();password=DigestUtils.md5DigestAsHex(password.getBytes());DigestUtils是一个工具类,里面的方法都使用了static进行修饰,md5DigestAsHex里面应该传的是一个数组,因此,我们应该使用password.getBytes()把String转换成数组。此外,MD5算法可以作为校验和使用,例如TCP协议里面有