草庐IT

算法识别

全部标签

javascript - JavaScript 中的最近对算法

我正在尝试实现分而治之算法,以使用JavaScript在随机生成的点集中找到最近的一对点。该算法应该在O(nlogn)时间内运行,但它比简单的蛮力算法运行时间要长得多,后者应该是O(n^2)。我创建了两个jsfiddle,为16000个点的数组计算算法时间:DivideandConquerBruteForce我的假设是,分而治之之所以如此缓慢,是因为JavaScript数组实际上是哈希表。是否有可能显着加快JavaScript中的算法?如果是这样,执行此操作的最佳方法是什么? 最佳答案 一眼看去,您的合并函数分配了过多的内存(大致顺

javascript - 布料仿真系统并行化算法?

可以使用以下算法完成简单的布料模拟:deftick(dt):forp1inparticles:forboundinp.bounds:p2=bound.particlep2.vel+=p1.pos+bound.stable_pos-p2.posp1.pos+=p1.vel*dt作为测试,我尝试了implementingit在JavaScript中。不幸的是,这很难扩展。随着粒子数量的增加,性能下降得非常快,并且限制非常低。有没有办法并行化这个算法?你能把它描述成一个简单的伪代码吗? 最佳答案 下面是平行布仿真设计的详细说明:http:

javascript - 为什么在维度变量中无法识别 .domain、tickFormat 和 tickValues? (d3,平行坐标)

我正在使用d3.js创建一个平行坐标图,但我很难按照我的意愿格式化轴标签。例如,我的轴之一“缓冲液浓度”绘制在对数刻度上,我通过维度变量指定了它,就像这样。vardimensions=[...{key:"b.Conc",description:"BufferConcentration",type:types["Number"],scale:d3.scale.log().domain([.1,100]).range([innerHeight,0]),tickValues:[.1,.2,.4,.6,.8,1,2,4,6,8,10,20,40,60],tickFormat:d3.format

Javascript扫描线算法查找具有相同x坐标的所有元素

我正在尝试通过使用PUREJavascript(没有其他框架)来实现线扫描算法,它基本上从左到右扫描屏幕并查看共享的所有元素(包括重叠元素)相同的x坐标。例如我有6个带有黑色边框的div元素,它们都随机布局在屏幕上。出于说明目的,我使用垂直的蓝色虚线从左到右扫描整个平面。目标是报告该行经过的所有元素。对于上面的示例,我们如何报告DivA、DivE、DivD以及hyperlinkD在DivD中使用JavaScript? 最佳答案 你可以通过getBoundingClientRectmethod获取元素的位置.然后遍历它们并检查它们是否

javascript - 椭圆曲线点压缩算法

我正在使用Javascript生成椭圆曲线,用于基于此示例代码的加密消息传递应用程序http://www-cs-students.stanford.edu/~tjw/jsbn/ecdh.html公钥会非常大,我知道可以压缩它们,但我一直找不到Javascript或大纲算法来执行此操作。这是一篇文章http://nmav.gnutls.org/2012/01/do-we-need-elliptic-curve-point.html概述了数学。 最佳答案 我想他们会增加对JavaScript椭圆曲线点压缩解决方案的兴趣,WebCrypt

javascript - 跨浏览器语音识别

我目前正在ASP.NET中开发一个项目。我需要添加适用于IE/Chrome/Firefox的语音命令。我搜索了很多,但没有找到任何跨浏览器的解决方案。是否有任何JavaScript框架可以做到这一点?我可以使用Google网络语音API作为服务吗?任何建议都会有所帮助。 最佳答案 只要浏览器支持HTML5的getUserMediaAPI就可以做到:使用HTML5的getUserMedia捕获音频流将其保存为.WAV,有相应的库通过AJAX发送.WAV到服务器通过SetInputToWaveFile方法将.WAV提供给SpeechRe

指纹识别(二)—— 光学指纹场景使用OLED HBM功能

指纹系列文章:指纹识别(一)——电容式、光学式、超声波式介绍指纹识别(二)——光学指纹场景使用OLEDHBM功能目前,背光高亮分为局部高亮和全局高亮,其中,全局高亮的亮度高而且稳定,使得指纹识别成功率比局部高亮的识别成功率高。但是,全局高亮也存在一定的问题,具体是,由于开启全局高亮(HBM)后屏幕亮度达到最大,会很刺眼,所以通常做法是在应用侧,即在手指按在指纹区域时候显示一个半透明的黑色蒙蔽(DIM),同时开启HBM。但是,由于绘制DIM到达屏幕上显示需要的时间和开启HBM在屏幕上显示需要的时间不同,而且DIM绘制会闪系统卡顿印象,最终导致HBM和DIM在屏幕上很难保证同时生效,此时,在按压屏

SLAM学习笔记----坐标关系梳理及PnP算法详解

一,重要的坐标关系的解析四个坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系。世界坐标系:机器人或相机运动过程中,肯定需要知道它的位置,因此需要设定世界坐标系,认定固定不动,作为参考坐标系,描述世界中的任何一点P(Xw,Yw,Zw)。相机坐标系:相机或机器人运动的一个坐标系,通过世界坐标系的变换(旋转R,平移T)计算得到。因此主要是将世界坐标系描述的点坐标P(Xw,Yw,Zw)转换成相机坐标系下描述P(Xc,Yc,Zc),方便计算得到在成像坐标系的坐标。图像(成像)坐标系:描述点在图像坐标系的成像点位置。像素坐标:在相机中得到的是一个像素,因此主要将图像坐标系的点转换成像素坐标系下。1.

javascript - 此 JavaScript 代码是否遵循中点位移算法?

我正在尝试使用MidpointDisplacementAlgorithm按照gamedev.stackexchange.com上的建议使用JavaScript和canvas.下面的代码生成数组索引为x位置且其值为y位置的点。varcreateTerrain=function(chops,range){chops=chops||2;range=parseInt(range||100);if(chops>8)return;varcycle=parseInt(width/chops);for(vari=0;igetRandomNumber()的参数是min和max。width和height分

javascript - 如何识别 DOM 何时被更改?

是否有一种简单的方法可以知道DOM何时已更改?有没有内置的JavaScript/jQuery事件/函数? 最佳答案 如果您必须检测更改,您可以检查DOM突变事件。DOMeventswikipediapage列出他们所有。但是,您应该知道它们在InternetExplorer中不受支持,并且在支持它们的浏览器中可能会经常触发。一种蛮力方法是使用setTimeout并自行检查更改。但我的经验表明,可以避免对DOM更改通知的需求。您能否详细说明您的具体要求? 关于javascript-如何识别