随笔分类 -  javascript算法

通过实际的问题,用算法求解的例子
摘要://查找 function find(str,hasSortArr,callback) { let l=0,r=hasSortArr.length; let index=-1; if(hasSortArr.length>0){ const ri=callback(str,hasSortArr[r-1 阅读全文
posted @ 2020-07-05 14:32 无工时代 阅读(221) 评论(0) 推荐(0)
摘要:缓存优化查询 const fs=require('fs'); //比较字符基类大小 相同返回0,str1>str2 返回1,str1<str2 返回-1, function str_compare(str1,str2){ let index=0; let dis=0; while (dis 0&&i 阅读全文
posted @ 2020-07-04 14:15 无工时代 阅读(290) 评论(0) 推荐(0)
摘要://比较字符基类大小 相同返回0,str1>str2 返回1,str1<str2 返回-1,function str_compare(str1,str2){ let index=0; let dis=0; while (dis 0&&index<str1.length){ if(str1.charC 阅读全文
posted @ 2020-07-01 19:00 无工时代 阅读(149) 评论(0) 推荐(0)
摘要:用四叉树对图像分类,获取tag和key function getMid(num) { if(num%2 0){ return num/2 }else{ return (num+1)/2 } } function getFourTree(rect,[x1,y1,x2,y2],deep) { if(de 阅读全文
posted @ 2020-06-15 17:16 无工时代 阅读(337) 评论(0) 推荐(0)
摘要:求多文字区块-团矩阵合并 阅读全文
posted @ 2020-05-28 15:26 无工时代 阅读(150) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2020-05-09 16:55 无工时代 阅读(0) 评论(0) 推荐(0)
摘要:思路是求两个图片的相似度,准确度在0.8左右 "C:\Program Files\nodejs\node.exe" D:\360jinrong\vue-component\tfjs-node\test.js 一 丁 七 万 丈 三 1 三 二 0.8019957983193278 上 下 不 与 丐 阅读全文
posted @ 2020-05-05 23:56 无工时代 阅读(1075) 评论(0) 推荐(0)
摘要://获取公共字符串,key唯一 function getCST(s1,s2) { const arr=[]; let start=0; let n1=0; let n2=0; while (n1<s1.length&&n2<s1.length){ if(s1[n1] s2[n2]){ arr.pus 阅读全文
posted @ 2020-05-01 20:54 无工时代 阅读(186) 评论(0) 推荐(0)
摘要://求最长相同子特征function LSC (s1, s2) { function getNum(n1,n2) { if(n1<0||n2<0){ return { s1Arr:[], s2Arr:[], num:0 } } const is=s1[n1] s2[n2]?1:0; if(is){ 阅读全文
posted @ 2020-04-30 12:56 无工时代 阅读(183) 评论(0) 推荐(0)
摘要:研究了编辑距离、lcd等字符比较的算法,发现它们的时间复杂度和空间复杂度都在n*m,太复杂了。脑海想了下人是怎么比较字符的,联想出动态规划公式,之后就有了这个字符扫描比较法。 设字符s1长度为n,字符s2长度为m, 当s1[n1]!==s2[n2], 扫描s2求出d1,l1,扫描s1求出d2,l2, 阅读全文
posted @ 2019-09-23 13:43 无工时代 阅读(370) 评论(0) 推荐(0)
摘要:在遍历html语法树中用到了深度优先遍历和广度优先遍历,就自己用js实现了下 测试 阅读全文
posted @ 2019-06-08 10:48 无工时代 阅读(3103) 评论(0) 推荐(1)
摘要:给定一个正整数N,求出【2、N】中的所有素数。 两种实现方法 阅读全文
posted @ 2019-06-03 19:05 无工时代 阅读(1081) 评论(0) 推荐(0)
摘要://将正整数n划分成一系列正整数之和,求正整数的不同划分个数 //n表示划分的整数,m表示划分的整数最大值 function q(n,m){ if(n<1||m<1){ return 0; }else if(n===1||m===1){ return 1; }else if(n<m){ return q(n,n) }... 阅读全文
posted @ 2019-06-02 15:11 无工时代 阅读(1559) 评论(0) 推荐(0)
摘要:设a,b,c是3个塔座,开始时,在塔座a上有n个圆盘,这些圆盘自上而下,堆叠在一起,编号小1在上,编号大n在下 根据动态规划公式: hanoi(n,a,b,c)=hanoi(n-1,a,c,b)+move(n,a,b)+hanoi(n-1,c,b,a); 阅读全文
posted @ 2019-06-02 14:05 无工时代 阅读(535) 评论(0) 推荐(0)
摘要:给定一个环形的字符串s,求字符串t,使得t是所有与s长度相同的字串里字典序最小的字符串和最大的字符串 例如: abcdaad 的最小字符串是 aadabcd,最大字符串是dabcdaa ‘5612358’的最小字符串是 ‘1235856’,最大字符串是‘8561235’ 阅读全文
posted @ 2019-05-30 12:36 无工时代 阅读(322) 评论(0) 推荐(0)
摘要:Trie Tree 简介 Trie Tree,又称单词字典树、查找树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无谓的字符串比较,查询效率比哈希表高。 性质 它有3个基本性质: 根节 阅读全文
posted @ 2019-05-07 23:19 无工时代 阅读(1384) 评论(0) 推荐(0)
摘要:已知有流程step1、step2、step3、step4、step5 , 如何控制输出下面过程 例如: 1:step1、step2、step3、step2、step3、step4、step5 2:step1、step2、step4、step5 3:step1、step2、step4、step5、st 阅读全文
posted @ 2018-11-01 20:07 无工时代 阅读(203) 评论(0) 推荐(0)
摘要://n个骰子的和,组成数字m的可能 function f(n,m) { if(n==1){ return 1; } var len=m-n; var sum=0; while (len>=0){ len-- //当前骰子和剩余骰子不能大于7 if(m-n+1-len<7&&n-1+len<... 阅读全文
posted @ 2018-03-16 14:54 无工时代 阅读(517) 评论(0) 推荐(0)
摘要:之前面试的时候,面试官问我的一个题目, 问:一个人在w*h的地图上走,每次走一步,先向左走到头,然后向下走,然后向上走,然后向左走,不能重复,求n步所在的位置 如下: 它会依次输出1-64, 阅读全文
posted @ 2017-12-19 15:40 无工时代 阅读(479) 评论(0) 推荐(0)
摘要://获取数组中两个相加等于0的一对数字,比如[ [ -10, 10 ], [ -5, 5 ] ] var arr=[-5,10,1,-10,3,4,5,9] //对数组进行排序 arr.sort(function(num1,num2){ if(num1>num2)return 1; if(num1num){ s2-- } i... 阅读全文
posted @ 2017-06-15 09:24 无工时代 阅读(781) 评论(0) 推荐(0)