Algoritmi i kërkimit me shumë artikuj përdoret për të gjetur të gjitha dukuritë e një elementi specifik në një listë. Ndryshe nga algoritmet e kërkimit me një artikull të vetëm, kjo qasje mban gjurmët e dukurive të shumta të elementit të synuar dhe kthen një listë të pozicioneve të tyre.
Si punon
- Filloni nga fillimi i listës.
- Përsëriteni përmes secilit element në listë.
- Krahasoni elementin aktual me vlerën e synuar.
- Nëse elementi aktual është i barabartë me vlerën e synuar, regjistro pozicionin e tij.
- Vazhdoni te elementi tjetër dhe përsëritni hapat 3-4.
- Pas përsëritjes në të gjithë listën, ktheni listën e pozicioneve të regjistruara.
Shembull
Le të shqyrtojmë një listë të numrave të plotë dhe duam të gjejmë të gjitha dukuritë e numrit 23.
Lista: {12, 23, 45, 23, 56, 23, 89, 90}
- Filloni nga fillimi: 12. Jo numri i dëshiruar.
- Kaloni te elementi tjetër: 23. Gjendet përputhja, regjistro pozicionin si 1.
- Kaloni te elementi tjetër: 45. Jo numri i dëshiruar.
- Kaloni te elementi tjetër: 23. Gjendet përputhja, regjistro pozicionin si 3.
- Kaloni te elementi tjetër: 56. Jo numri i dëshiruar.
- Kaloni te elementi tjetër: 23. Gjendet përputhja, shëno pozicionin si 5.
- Kaloni te elementi tjetër: 89. Jo numri i dëshiruar.
- Kaloni te elementi tjetër: 90. Jo numri i dëshiruar.
- Pas përsëritjes, ktheni një listë pozicionesh: [1, 3, 5].
Shembull Kodi në C++
Në shembullin e dhënë, multipleItemSearch
funksioni përdoret për të gjetur të gjitha dukuritë e numrit 23 në një listë të numrave të plotë. Rezultati do të jetë një vektor që përmban pozicionet e të gjitha dukurive(pozicionet fillojnë nga 0).