TypeScript 算法手册 【数组基础知识】

在这里插入图片描述

1. 数组简介

1.1 数组定义

数组就像是一排整齐的储物柜,每个柜子里都放着相同类型的物品。这些柜子紧挨着排列,每个柜子都有自己的编号(从 0 开始),方便我们快速找到需要的物品。

用 TypeScript 代码表示一个简单的数组:

const array: number[] = [1, 2, 3, 4, 5];

1.2 数组特点

  1. 有序性: 数组中的元素按照顺序排列,可以通过索引访问
  2. 同质性: 数组中的元素必须是相同类型的
  3. 固定大小: 数组的大小在创建时固定,不能动态改变

2. 数组的基本操作

2.1 访问元素

const array: number[] = [1, 2, 3, 4, 5];
const element = array[2]; // 3

2.2 添加元素

const array: number[] = [1, 2, 3, 4, 5];
array.push(6); // [1, 2, 3, 4, 5, 6]

2.3 删除元素

const array: number[] = [1, 2, 3, 4, 5];
array.pop(); // [1, 2, 3, 4]

2.4 修改元素

const array: number[] = [1, 2, 3, 4, 5];
array[2] = 10; // [1, 2, 10, 4, 5]

2.5 查找元素

const array: number[] = [1, 2, 3, 4, 5];
const index = array.indexOf(3); // 2

3. 数组的常见方法

3.1 数组的创建

const array: number[] = [1, 2, 3, 4, 5];

3.2 数组的遍历

const array: number[] = [1, 2, 3, 4, 5];
for (const element of array) {
  console.log(element);
}

3.3 数组的映射

const array: number[] = [1, 2, 3, 4, 5];
const mappedArray = array.map((element) => element * 2); // [2, 4, 6, 8, 10]

3.4 数组的过滤

const array: number[] = [1, 2, 3, 4, 5];
const filteredArray = array.filter((element) => element % 2 === 0); // [2, 4]

3.5 数组的归约

const array: number[] = [1, 2, 3, 4, 5];
const reducedArray = array.reduce((acc, element) => acc + element, 0); // 15

3.6 数组的查找

const array: number[] = [1, 2, 3, 4, 5];
const foundElement = array.find((element) => element === 3); // 3

3.7 数组的排序

const array: number[] = [1, 2, 3, 4, 5];
array.sort((a, b) => a - b); // [1, 2, 3, 4, 5]

3.8 数组的反转

const array: number[] = [1, 2, 3, 4, 5];
array.reverse(); // [5, 4, 3, 2, 1]

3.9 数组的连接

const array1: number[] = [1, 2, 3];
const array2: number[] = [4, 5, 6];
const concatenatedArray = array1.concat(array2); // [1, 2, 3, 4, 5, 6]

3.10 数组的切片

const array: number[] = [1, 2, 3, 4, 5];
const slicedArray = array.slice(1, 4); // [2, 3, 4]

3.11 数组的填充

const array: number[] = [1, 2, 3, 4, 5];
array.fill(0); // [0, 0, 0, 0, 0]

3.12 数组的删除

const array: number[] = [1, 2, 3, 4, 5];
array.splice(2, 1); // [1, 2, 4, 5]

3.13 数组的合并

const array1: number[] = [1, 2, 3];
const array2: number[] = [4, 5, 6];
const mergedArray = [...array1, ...array2]; // [1, 2, 3, 4, 5, 6]

3.14 数组的过滤

const array: number[] = [1, 2, 3, 4, 5];
const filteredArray = array.filter((element) => element % 2 === 0); // [2, 4]

在这里插入图片描述

数组的优点

  1. 数组是有序的,可以通过索引访问元素
  2. 数组是同质的,所有元素必须是相同类型的
  3. 数组的大小是固定的,不能动态改变

数组的缺点

  1. 数组的大小是固定的,不能动态改变

总结

数组是一种非常基础的数据结构,它在很多场景下都非常有用。

喜欢的话就点个赞 ❤️,关注一下吧,有问题也欢迎讨论指教。感谢大家!!!

** 我已更新完的 TypeScript 设计模式 专栏,感兴趣可以关注一下,一起学习交流 **

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bobostudio1995

感谢您的一杯咖啡,是我前进的动

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值