目录

Matlab中快速查找元素索引号

Matlab中快速查找元素索引号

1、背景介绍

在算法设计过程中,有时候需要从一维/二维数组中,快速查找是否某个元素,以及该元素所在的位置。如一维矩阵[1 2 3 4 5 6 6 7 8]所示,元素6所在的位置为6 7。

2、函数测试

matlab中函数find()可以快速查找到指定元素所在的位置,并返回其位置。

2.1 一维数组查找

如一维数组为A,包含元素为[1 3 4 6 6 8 9 9 0 6 6],那么查找测试结果如下:

A=[1 3 4 6 6 8 9 9 0 6 6]
indices=find(A==6)

那么返回的结果为:4 5 10 11。为一个1X4的矩阵。

https://i-blog.csdnimg.cn/direct/cd91183d2bd84e29a0261d029ca88300.png

2.2 二维矩阵查找

对于复杂算法,有时候涉及到从二维矩阵中查找,如下图所示,展示了从6*4的矩阵中寻找指定元素,其返回也是一个矩阵。

A=[1 1 1 1;2 2 2 2;3 3 3 3;4 4 4 4;5 5 5 5;6 6 6 6]
indices=find(A==1)

返回结果为:1 7 13 9

https://i-blog.csdnimg.cn/direct/1aa425e223e94d618d4f9439619039ae.png