JavaScript 实现常见数据结构 —— 数组

数据结构一般与算法在一块儿出现。若是想要对常见算法有必定的掌握,那么做为算法构建的基础 —— 数据结构,就不能不熟练掌握。javascript

众所周知,数据结构是为算法服务的,而算法操做须要在特定的数据结构之上。如:二分查找等排序算法,须要在有随机访问特性的数组之上实现,而若是将数据保存在链表或者字典中,算法实现将变得困难。java

 

下面就对 JavaScript 语言实现常见的数据结构作个总结,以备为后续算法学习打下基础。算法

 

在 JavaScript 中,数组可经过 new Array() 或 [] 建立,而且数组是可修改的对象,这使得用数组实现一些其余数据结构变得很容易。经常使用的数据方法有:数组

let arr = ['a', 'b', 'c'], arr_1 = ['x', 'y', 'z'];

 

- cancat() 链接两个或者多个数组,而且返回该数组数据结构

let newArr = arr.concat(arr_1);
// newArr: ['a', 'b', 'c', 'x', 'y', 'z']

 

- join() 使用指定字符,将数组各元素连着成字符串返回函数

let str = arr.join('-');
// str: 'a-b-c'

  

- pop() 删除数组尾的一个元素并返回;学习

let char = arr.pop();
// char: 'c'; arr:['a', 'b']

  

- push() 追加元素到数组尾spa

arr.push('d');
// arr: ['a', 'b', 'c', 'd']

 

- shift() 删除数组首的一个元素并返回;scala

let char = arr.shift();
// char: 'a'; arr: ['b', 'c']

  

- unshift() 追加元素到数组首code

arr.unshift('a'); 
// arr: ['a', 'a', 'b', 'c']

 

- sort() 对数组元素排序,按照字符顺序,可接受函数

let arr_1 = arr.sort(function(a, b){
return b.charCodeAt() - a.charCodeAt();
})
//
arr_1: ['c', 'b', 'a']

 

- splice 经过指定索引删除元素或添加元素

arr.splice(1, 2) // 删除index 为 1的元素开始,长度为 2的长度
// arr: ['a']

arr.splice(1, 0, 'x', 'y', 'z') // 删除 index 为1的0个元素,并添加元素: 'x', 'y', 'z'
// [ 'a', 'x', 'y', 'z', 'b', 'c' ]

 

 

以上。

相关文章
相关标签/搜索