mirror of
https://github.com/nextapps-de/flexsearch.git
synced 2025-09-29 23:08:59 +02:00
keep scoring on intersect-union (tags)
This commit is contained in:
2
dist/module-min/intersect.js
vendored
2
dist/module-min/intersect.js
vendored
@@ -1 +1 @@
|
||||
import{create_object,concat,sort_by_length_up,get_max_len}from"./common.js";export function intersect(a,b,c,d,e){const f=a.length;let g,h,i=[];g=create_object();for(let j,k,l,m,n=0;n<b;n++)for(let b=0;b<f;b++)if(l=a[b],n<l.length&&(j=l[n]))for(let a=0;a<j.length;a++)k=j[a],(h=g[k])?g[k]++:(h=0,g[k]=1),m=i[h]||(i[h]=[]),m.push(k);const j=i.length;if(j)if(!e){if(j<f)return[];i=i[j-1],(i.length>c||d)&&(i=i.slice(d,c+d))}else i=1<i.length?union(i,d,c):i[0];return i}function union(a,b,c){const d=[],e=create_object();let f,g,h,j=a.length;for(let k=0;k<j;k++){f=a[k],h=f.length;for(let a=0;a<h;a++)if(g=f[a],!e[g])if(e[g]=1,b)b--;else if(d.push(g),d.length===c)break}return d}export function intersect_union(a,b){const c=create_object(),d=create_object(),e=[];for(let d=0;d<a.length;d++)c[a[d]]=1;for(let f,g=0;g<b.length;g++){f=b[g];for(let a,b=0;b<f.length;b++)a=f[b],c[a]&&!d[a]&&(d[a]=1,e.push(a))}return e}
|
||||
import{create_object,concat,sort_by_length_up,get_max_len}from"./common.js";export function intersect(a,b,c,d,e){const f=a.length;let g,h,i=[];g=create_object();for(let j,k,l,m,n=0;n<b;n++)for(let b=0;b<f;b++)if(l=a[b],n<l.length&&(j=l[n]))for(let a=0;a<j.length;a++)k=j[a],(h=g[k])?g[k]++:(h=0,g[k]=1),m=i[h]||(i[h]=[]),m.push(k);const j=i.length;if(j)if(!e){if(j<f)return[];i=i[j-1],(i.length>c||d)&&(i=i.slice(d,c+d))}else i=1<i.length?union(i,d,c):i[0];return i}function union(a,b,c){const d=[],e=create_object();let f,g,h,j=a.length;for(let k=0;k<j;k++){f=a[k],h=f.length;for(let a=0;a<h;a++)if(g=f[a],!e[g])if(e[g]=1,b)b--;else if(d.push(g),d.length===c)break}return d}export function intersect_union(a,b){const c=create_object(),d=[];for(let d,e=0;e<b.length;e++){d=b[e];for(let a=0;a<d.length;a++)c[d[a]]=1}for(let e,f=0;f<a.length;f++)e=a[f],1===c[e]&&(d.push(e),c[e]=2);return d}
|
Reference in New Issue
Block a user