次のコードがあります。
for(ArticleBasketInBean basketBean : bean.getBasket()) {
for(ArticleDTO article : dto.getArticleList()) {
if(basketBean.getArticleReference().equals(article.getArticleReference())) {
article.setAddedToBasket(true);
}
}
}
明らかに、上記の操作の時間計算量は O(n^2) です。この場合articleReferenceはユニークです。したがって、によって返されるリストにbean.getBasket()は重複がありません。これは、によって返されるarticleReferenceリストにも当てはまりますdto.getArticleList()。
このネストされた反復を避け、より高速なコードを記述したいと考えています。どうやってやるの?