ES数据结构了解下
2019-06-21 13:29
63 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/a1396537376/article/details/93189161
ES数据结构一:线性数组结构。
class Pojo { constructor(){ this.elements = new Array(0); } //获取数组的长度 size(){ return this.elements.length; } //向数组末尾添加一个元素 add(element){ //创建一个新数组 let NewArry = new Array(this.elements.length+1); //将原数组元素放入新数组中 for (let i =0;i<this.elements.length;i++){ NewArry[i] = this.elements[i]; } //添加数据 NewArry[this.elements.length] = element; //替换地址 this.elements = NewArry; } //删除数组中的元素 delete(index){ //逻辑判断 if (index < 0 || index>this.elements.length){ throw new Error('下标越界'); } else { //声明一个新的数组,长度减一 let NewArry = new Array(this.elements.length - 1); //数组元素的复制 for(let i=0;i<NewArry.length;i++){ if (i<index){ NewArry[i] = this.elements[i]; } else { NewArry[i] = this.elements[i+1]; } } //替换地址 this.elements = NewArry; } } //插入元素到指定位置 insert(index,element){ let NewArray = new Array(this.elements.length+1); //复制元素到新数组 for (let i =0;i<this.elements.length;i++){ //在目标元素索引之前 if(i<index){ NewArray[i] = this.elements[i]; } else { NewArray[i+1] = this.elements[i]; } } NewArray[index] = element; //替换地址 this.elements = NewArray; } //获取数组中的某个元素 get(index){ return this.elements[index]; } show(){ console.log(this.elements.toString()); } }
测试方法:
const main = ()=>{ let pj = new Pojo(); pj.add(1); pj.add(2); pj.add(3); //pj.delete(2); pj.insert(1,6); pj.show(); console.log(pj.size()); }; main();
输出结果:
相关文章推荐
- 【深入了解cocos2d-x 3.x】内置数据结构(1)——智能指针
- 【深入了解cocos2d-x 3.x】内置数据结构(2)——Map
- elk之es数据结构
- 一张图了解磁盘里的数据结构
- 【数据结构】对B-树、B+树与B*树的简单了解
- 初步了解数据结构
- 前端基本的数据结构和算法了解
- 了解FX系列PLC基本数据结构,才能学会编程
- es了解集群中属性 4
- es索引与数据结构 ,以及其他知识使用
- 了解内存与数据结构的关系(二)。。。
- 2014/03/04粗略了解数据结构
- ES2018新特性——每个JS开发者都需要了解
- ECMAScript 6(ES 6)初步了解
- 前端基本的数据结构和算法了解
- 数据结构______C语言基础了解篇
- 对数据结构的一些了解
- 前端基本的数据结构和算法了解
- 对于数据结构的初步了解
- 学习Redis你必须了解的数据结构——JS实现集合和ECMA6集合