
前端算法
迷失的羔羊over
分享,是最好的学习
展开
-
JS 实现队列
通过JS实现队列的数据结构,首先是最普通的队列,先入先出 // 队列 function createQueue() { // 队列 let queue = [] // 入队 const enQueue = (data) => { if(data == null) return queue.push(data) } // 出队 const deQueue = () => { if(queue.length === 0) return原创 2022-05-19 14:58:08 · 6336 阅读 · 1 评论 -
JS 遍历 哨兵模式优化
通过在遍历的时候,添加哨兵对数组进行优化,对比了下,在极限情况大概一千万条可以减少60%以上的遍历时间 // 遍历 const find = (num, key) => { let arr = [] for(let i = 0; i < num; i++) { arr.push(i) } const startTime = new Date() let i = 0 const n = arr.length while(i < n) { if( a原创 2022-05-11 17:51:52 · 299 阅读 · 0 评论 -
JS 链表实现LRU 最终使用淘汰算法
LRU: LRU是Least Recently Used的缩写,即最近最少使用,是一种常用的页面置换算法,选择最近最久未使用的页面予以淘汰。 JS链表库 linked-list https://github.com/wooorm/linked-list 大家也可以自己写链表 import { List, Item } from "linked-list";` // LRU实例 export default class LRUItem extends Item { constructor(value)原创 2022-05-11 17:41:19 · 369 阅读 · 0 评论