Pagina informaticii

Teste de informatică pentru liceu, articole C#, C/C++, PHP

Probleme de căutare în vectori

Căutare liniară:
1. Dat un şir de n (n≤10000) numere întregi a0, a1, a2, ..., an-1 şi un întreg x, să se determine poziţia unde se află x în şir.

2. Să se determine cea mai din stânga poziţie unde apare x, sau –1 dacă x nu apare în şir.

3. Se se determine cea mai din dreapta poziţie a lui x în şir, sau –1 dacă x nu apare în şir.

4. Să se determine poziţia unde apare x în secvenţa a[p..q], adică în secvenţa ap, ap+1, ..., aq, sau –1 dacă x nu apare în secvenţă.

5. Să se determine numărul de apariţii ale lui x în şir.

6. Să se determine poziţia celei de-a k-a apariţii a lui x în şir, sau –1 dacă x apare de mai puţin de k ori în şir. De exemplu, pentru şirul 2, 3, 3, 5, 6, 3, 7, 8, 12, 3, 4, 3, 1, 81 şi x = 3, k=4, se va afişa 9 (poziţia unde este a patra apariţie a lui 3 în şir).

7. Căutare binară
Dat un şir de n (n≤10000) numere întregi a0, a1, a2, ..., an-1 ordonat crescător şi un întreg x, să se determine eficient o poziţie unde se află x în şir.

Despre autor
Author

Dan Pracsiu deţinător www.dponline.ro
Profesor, Liceul Teoretic "Emil Racoviță" Vaslui
Membru în Comisia Naţională a Olimpiadelor de Informatică
Pasiuni: istoria, călătoriile, fotografia, muzica clasică

Scrie un comentariu
Nume:

Comentariu:

15 + 10 =