Wyszukiwanie w tablicy dwuwymiarowej
Lekcja 11 z 26 w kursie Tablice w C++ w Coddy.
Wyszukiwanie w tablicy 2D lub macierzy jest podobne do wyszukiwania w tablicy 1D. Musimy przejść przez każdy element i jeśli znajduje się on w macierzy, musimy zwrócić true, w przeciwnym razie false.
Użyj zagnieżdżonych pętli, aby iterować, korzystając ze zmiennych i i j
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
if(arr[i][j]==key){
return true;
}
}
}
return false;Analiza złożoności czasowej
Ponieważ używamy pętli wewnątrz pętli, oznacza to, że musimy przejść przez n elementów n razy, co daje złożoność O(n2).
Wyzwanie
Mając daną macierz oraz liczbę jej wierszy i kolumn, wypisz kwadraty elementów, jeśli suma ich indeksów jest parzysta.
np. arr[1][3], wtedy 1+3=4, co jest liczbą parzystą, więc podnieś ten element do kwadratu, a pozostałe elementy wypisz bez zmian.
Spróbuj swoich sił
#include<iostream>
using namespace std;
int main(){
int m,n;
cin>>m>>n;
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
cin>>arr[i][j];
}
}
//Code here
return 0;
}Wszystkie lekcje w sekcji Tablice w C++
Poćwicz samodzielnie: Kompilator C++ online