Что ж, самое простое изменение (поскольку может быть только одно совпадение для объекта A), тогда вы можете сделать разрыв после [mutableArray addObject: objectA].Когда совпадение происходит, это приведет к сокращению внутреннего цикла на 50%.
Еще более драматично, если вы делаете это много, и порядок anotherObjectArray не имеет значения, будет инвертировать структуру данных anotherObjectArray.и использовать словарь, сохраняя объекты по тегу.Затем вы просто перебираете objectA, спрашивая, есть ли его тег в словаре ObjectZ.