首页 >> 技术 >> 密集数组——前端电子表格中的应用实战

密集数组——前端电子表格中的应用实战

2025-08-03 12:16:17

"value": 0 } }, "2": { "1": { "value": 2 }, "3": { "value": "S" } }, "4": { "3": { "value": 3 } }}

必需存取样本时候直接通过实例本体访问。下面是JS Sparse Array的一个简单实例做到。

function SparseArray(){ this._array = {}}SparseArray.prototype.setValue = function(row, col, data){ if(!this._array[row]){ this._array[row] = {} } this._array[row][col] = data}SparseArray.prototype.getValue = function(row, col){ if(this._array[row]){ return this._array[row][col] } return undefined;}let arr = new SparseArray();arr.setValue(3, 3, 5);console.log(arr.getValue(3, 3)) // 5 2、举例来说道

在乘法里面每一个锕系元素有行标,列标,锕系元素最大值三个电子邮件,将锕系元素按需放入变量里面便是举例来说道存储器。存储器结构可以是一个包含锕系元素电子邮件实例,也可以直接简所谓为一个间隔为3的变量。举例来说道的存储器形式可以方便纪录相近下图的一个点电子邮件或者自由曲线电子邮件,通过对变量顺利完成push和pop,可以方便顺利完成回退和前进。

上图里面的一个点电子邮件,以变量举例来说道存储器后如下,锕系元素value代表理论上已锕系元素总数,也可以适用实例纪录时间等更多电子邮件。

[ [1,1,1], [5,8,2], [4,3,3], [1,5,4]]

下面,我们就用这种形式建立一个undoStack纪录回退。

function TSMatrix(){this._array = [];this.undoStack = []} TSMatrix.prototype.addNode = function(row, col, value){this._array.push([row, col, value])}TSMatrix.prototype.canUndo = function(){return this._array.length> 0;}TSMatrix.prototype.undo = function(){if(this._array.length> 0){this.undoStack.push(this._array.pop())}}TSMatrix.prototype.canRedo = function(){return this.undoStack.length> 0;}TSMatrix.prototype.redo = function(){if(this._array.length> 0){this._array.push(this.undoStack.pop())}}TSMatrix.prototype.print = function(){console.log(JSON.stringify(this._array))}let mat = new TSMatrix();mat.addNode(1, 1, 1)mat.addNode(5, 8, 2)mat.addNode(4, 3, 3)mat.addNode(1, 5, 4)mat.print() //[[1,1,1],[5,8,2],[4,3,3],[1,5,4]]mat.undo()mat.print() //[[1,1,1],[5,8,2],[4,3,3]]mat.redo()mat.print() //[[1,1,1],[5,8,2],[4,3,3],[1,5,4]]

除了以上两种形式,还可以将上述形式结合,建立十字队列以快速诬蔑应更复杂的场景。大家如果感兴趣点个赞我们下次继续说道。

在在此之后的素材里面,我们还可能会继续为大家带来其他后部海量技术里面的深度解密,走过路过绝不会可惜。

医学影像学
哪些药物可以止咳祛痰化痰
骨科医院
脑神经衰弱的症状
膝盖酸痛

上一篇: 库珀预计2021年美国汽车销量将下降近7%

下一篇: 大型音乐舞蹈史诗《解放海南岛》北京上演,展现海南历史悠久

相关阅读
民宿在线住押金2万逾期近2年不退,常州:建议司法途径维权

后能返还。我暂定了6月底5号绍兴的别墅九份,偿还债务路费8800元,还有一笔批次是6月底12号,暂定了金华的一栋别墅, 并偿还债务路费6800元。和平台当初承诺三天之内索要路费,但直到现在都没后撤。我

2025-11-01 00:16:17
排污口监督管理出台顶层设计者 生态环境部:对入河入海排污口“有口皆查、应查尽查”

式,执意“有口皆查、应查尽查”,应用了一些高科技,也下足了大福功夫,因为每一个都是到现场徒步核查,摸清了淮河、渤海国等试点管理工作邻近地区的排污口自然数。 其之前,辨认出淮河退河排污口6

2025-11-01 00:16:17
交广会客厅|太原铁路加强非典型肺炎防控服务清明小长假出行

交广会客厅|晋阳铁路加强禽流感联合国开发计划署服务冬至小长假提供方便 4月3日至5日,冬至小长假在此期间,近现代铁路晋阳局内的公司香港)有限公司切实从紧抓好站车禽流感联合国开发计

2025-11-01 00:16:17
美国调查人员称俄的政府正在转移资产以躲避制裁

英国财政部近期成立的、督导处理对俄默许的值得注意工作组督导人4月初1日表示,英国警察局长发现,有确凿证据断定哈萨克斯坦实质上仍要转移存款竭力逃过欧美国家默许。 据华尔街日报4月初

2025-11-01 00:16:17
四川成都新增本土确诊病例2例,无症状猫狗3例

央广网遵义4月底2日消息(记者 昌思荣)4月底2日晚,都江堰市人民政府新闻办公室举行疫情防控工作新闻发布会,核查疫情最新防控情形。 据了解,4月底2日0到18时,都江堰市新增本土确

2025-11-01 00:16:17