草庐IT

1.决策树C4.5算法

全部标签

javascript - 在 JavaScript 中实现一个复杂的决策表

这是一个针对JavaScript专家的实现细节问题。我有一个包含多个字段的UI,其中字段的值以复杂的方式取决于七位输入的值。随着用户查看应用程序的更多内容而定期更改的128个可能值中的任何一个值究竟应该显示什么?现在,我已经通过if-then-else组合将其实现为决策树,但在需求变化的情况下它很脆弱并且很难正确处理。我考虑过的一种实现方法是创建一个从0x0到0x7F的值数组,然后在每个位置存储一个闭包--vartbl;//initializeitwiththevalues...tbl[0x42]=function(){doAThing();doAnotherThing();}然后调用

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 - 如何在 javascript 中实现决策树。寻找比我丑陋的更好的解决方案

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭4年前。Improvethisquestion我正在寻找一种更好的方法来在javascript中实现决策树。作为编程新手,我的工具箱中的工具数量非常有限。我知道的唯一方法是:.ifelseif语句非常难维护和遵循.我可以使用switch/case语句并执行状态机类型的操作。建议和理论表示赞赏。此外,小代码示例将非常有帮助。感谢您查看。戴尔

javascript - 为什么冒泡排序的 Javascript 实现比其他排序算法快得多?

我做了一些research关于Javascript排序算法的性能比较,发现意想不到的结果。冒泡排序提供了比其他排序(例如Shell排序、快速排序和nativeJavascript功能)更好的性能。为什么会这样?也许我的性能测试方法有误?你可以找到我的研究结果here.下面是一些算法实现的例子:/***Bubblesort(optimized)*/Array.prototype.bubbleSort=function(){varn=this.length;do{varswapped=false;for(vari=1;ithis[i]){vartmp=this[i-1];this[i-1]

javascript - 在 JavaScript 中实现流行的算法

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。谁能推荐一本解释所有使用JavaScript的流行搜索/排序/树/图算法的好书或网站?我正在寻找类似算法介绍的书籍,但提供的是JavaScript而非伪代码或C/Java等实现示例和代码片段。目的是学习JavaScript中的基本计算机科学算法,因为我更喜欢和理解JavaScript。

javascript - "^="运算符在此查找非配对数字算法中做了什么?

这个问题在这里已经有了答案:findtheonlyunpairedelementinthearray(10个答案)Whatarebitwiseoperators?(9个回答)WhatdotheseJavaScriptbitwiseoperatorsdo?(3个答案)关闭5年前。看到一段有趣的代码,用于在重复数字列表中找到一个孤独的数字(其中列表中的每个数字都出现两次,除了一个)。functionfindNonPaired(listOfNumbers){letnonPairedNumber=0listOfNumbers.forEach((n)=>{nonPairedNumber^=n})

强化学习——Q-Learning算法原理

一、Q-Learning:异策略时序差分控制从决策方式来看,强化学习可以分为基于策略的方法(policy-based)和基于价值的方法(value-based)。基于策略的方法直接对策略进行优化,使制定的的策略能够获得最大的奖励。基于价值的强化学习方法中,智能体不需要制定显式的策略,它维护一个价值表格或价值函数,通过这个价值表格或价值函数来选取价值最大的动作。Q-Learning算法就是一种value-based的强化学习算法。二、算法思想:Q(s,a)是状态价值函数,表示在某一具体初始状态s和动作a的情况下,对未来收益的期望值。Q-Learning算法维护一个Q-table,Q-table记

javascript - 是否有一种树结构或算法可以在树中的各个级别之间进行洗牌?

我有一个我认为很有趣的问题。基本上,我有一个项目列表,其中每个项目都有一组固定的元数据,具有不同的值。例如:项目1:{类型=“文本”,作者=“用户A”,编辑日期=“03/03/2003”项目2:{Type="Table",Author="UserA",EditedDate="04/05/2006"}项目3:{Type="Image",Author="UserB",EditedDate="05/05/2005"}项目4:{类型=“文本”,作者=“用户B”,编辑日期=“05/07/2007”现在,就目前而言,该项目列表已展开并显示在表格中。但是,我们想找到一种方法允许用户在树中浏览它,但增

javascript - 将 WarpWallet 的哈希算法从 javascript 转换为 C#

我正在尝试实现warpwalletC#中的代码。我将cryptsharp用于其scrypt和PBKDF2实现。但是,我得到的结果似乎与真实网站不同。这是我的代码:staticvoidMain(string[]args){stringrandomString="mypassword";byte[]passwordBytes=Encoding.UTF8.GetBytes(randomString);byte[]passwordBytesScrypt=newbyte[passwordBytes.Length+1];Array.Copy(passwordBytes,0,passwordByte