草庐IT

回溯——算法

全部标签

javascript - 避免用多种不同的语言编写相同的算法

我是一名Web开发人员,我发现很多时候我需要在客户端和服务器上使用相同的功能。所以我用JS以及PHP或任何服务器端语言编写它。我受够了这个。如果我必须更改它,那么我需要在两个地方都进行更改。如果我想将它用于某些手持设备,那么我将不得不使用Objective-C或Java等再次重写该代码。然后如果我需要更改该功能,那么我将需要在所有地方更改它。有解决办法吗?如果我将通过ajax调用一些web服务,那么客户端将有延迟。如果它将在JS中,则无法从PHP或Java等内部访问它。如果我从另一种语言使用PHP中的某些服务,那么这也可能成为性能问题。有时我们也可能需要使用db或不使用db作为输入的某

javascript - 许多节点的图形算法

我一直在尝试开发一个基于Web的应用程序来帮助绘制节点及其交互的图形。我尝试将Sigma.Js与ForceAtlas扩展一起使用。对于我的简单测试(几个节点),结果非常好看,但是如果增加了1000个节点,结果就会变得一团糟。有没有这样的方法可以使结果更易于查看?(在眼睛上更容易/不仅仅是1个大Blob)我将如何去做呢?是否已经编写了任何算法(我可以实现?) 最佳答案 您可以尝试Fruchterman-Reingold力布局(有一个sigmaplugin)。它特别减少了相互交叉的链接数量,因此它通常更适合大型图(除非所有节点都有很多连

javascript 模糊事件——有什么方法可以检测哪个元素现在有焦点吗?

这个问题在这里已经有了答案:Whena'blur'eventoccurs,howcanIfindoutwhichelementfocuswent*to*?(23个回答)关闭9年前。有没有人有一种技术可以让我确定哪个元素在模糊事件后具有焦点?我有一个输入字段,我想在模糊时重置它,除非模糊是由用户单击“保存”按钮引起的。我很想在保存按钮的onclick函数中设置一个标志,但这会触发得太晚(除非点击事件总是在模糊事件之前触发,我对此表示怀疑。)

JavaScript——控制二维动态数组

我想在javascript中初始化一个二维动态数组,它不限制元素(可能)vardynamic=newArray();dynamic[]=newArray();在我想为特殊数组添加值之后dynamic[id].push(2);//id=3,dynamic[3][0]=2...dynamic[id].push(3);//id=3,dynamic[3][1]=3...dynamic[id].push(5);//id=5,dynamic[5][0]=5这可能吗?我该怎么做,谢谢 最佳答案 你可以做的一件事是这样的(jsfiddle):var

Java 网络编程 —— ServerSocket 详解

构造ServerSocketServerSocket的构造方法有以下几种重载形式ServerSocket()throwsIOExceptionServerSocket(intport)throwsIOExceptionServerSocket(intport,intbacklog)throwsIOExceptionServerSocket(intport,intbacklog,InetAddressbindAddr)throwsIOException参数port指定服务器要绑定的端口(即服务器要监听的端口),参数backlog指定客户连接请求队列的长度,参数bindAddr指定服务器要绑定的I

javascript - inherit.js 中的奇怪正则表达式(John Resig 着)——为什么、什么以及如何?

这个问题在这里已经有了答案:StrangeJavaScriptidiom-whatdoes"/xyz/.test(function(){xyz;})"do?(1个回答)关闭8年前。我最近使用了一个littleutilitylibrary作者:JohnResig,称为inherit.js.我通常试图理解我正在使用的库的核心部分,经过一番摸索之后我终于理解了代码的难点(即他如何调用父类(superclass)的相应方法)。我没有得到的1%位与正则表达式有关fnTest=/xyz/.test(function(){xyz;})?/\b_super\b/:/.*/;正则表达式/xyz/针对函数

javascript - 确定定界形状边界的点的算法——使用 javascript

我正在开发一个htmlmap制作器,我想为我们的用户提供通过单击区域快速创建形状的能力,而不是让他们手动定义形状。首先让我们看看我们目前正在做什么。用户想要绘制区域A。他需要做的是在每个点上多次单击以定义形状的边界。我想知道是否有一种算法允许用户在A区域中单击并可以确定要放置哪些点以便在形状边界之后创建接近最佳的形状-基于图像对比度。我处理这个问题的第一个想法是确定离点击点最远的上、左、下、右点。将这四点作为我们的出发点。然后对于每个段,用一个新点对其进行分割,并沿着向量法线移动新点,直到我碰到对比边缘。当然,这种方法有一些局限性,但这是我可以假设的形状可以是凸的,凹的等等...对比度

javascript - 使用Dijkstra算法寻找能够承载最大权重的路径

我有一个图,有X个节点和Y个边。加权边缘。重点是从一个节点开始,并在最后一个位置的另一个节点停止。现在问题来了:将问题可视化。边缘是道路,边缘权重是在道路上行驶的车辆的最大重量限制。我们想驾驶最大的卡车从A到F。我想要从A到F的所有路径的最大允许重量。我可以使用某种Dijkstra算法来解决这个问题吗?我不确定如何以我可以实现的算法的形式来表达这个问题。任何帮助深表感谢。我很困惑,因为Dijkstra算法只考虑最短路径。 最佳答案 如果我没理解错的话,你想找到一些具有最大瓶颈边的节点之间的路径。也就是说,你想要最小边尽可能大的路径。

javascript - 谷歌地图劫持​​了 iphone 的滚动(触摸事件)——如何恢复?

我使用JQuery。我使用googlemapsapiv3。现在,在我的iPhone上,如果我将手指放在map区域,我无法向下滚动页面。map选项中的draggable:false不起作用。它只是阻止map在内部移动。找到了这些类似的问题,但无法从中得到答案:HowcanIdisablescrollingontheGoogleMapsmobilelayout?EmbedGoogleMapsonpagewithoutoverridingiPhonescrollbehaviorGoogleMapsAPI;SuppressMapPanningtoenablePageScrolling有什么简单

Javascript 模块化算法

Javascript将以下代码片段计算为-1。-5%4我理解余数定理表明a=bq+r使得0≤r 最佳答案 因为它是一个remainderoperator,不是模数。但是有一个proposalforaproperone.引自Ecma5.1remainderrfromadividendnandadivisordisdefinedbythemathematicalrelationr=n−(d×q)whereqisanintegerthatisnegativeonlyifn/disnegativeandpositiveonlyifn/dis