Metoda zachłanna (greedy) to strategia konstruowania algorytmów, w której w każdym kroku wybiera się decyzję lokalnie najlepszą według pewnego kryterium (np. najmniejszy koszt, największy zysk, najwcześniejsze zakończenie). Kluczowe jest to, że algorytm nie analizuje wszystkich możliwości naraz i zwykle nie cofa wcześniejszych decyzji. Dlatego poprawna odpowiedź opisuje "wybieranie rozwiązań, które w danym kroku wydają się najkorzystniejsze".
Warto pamiętać o typowej pułapce: zachłanność nie zawsze gwarantuje optimum globalne. Daje poprawny wynik tylko w klasach problemów, które mają odpowiednie własności (intuicyjnie: lokalnie najlepszy wybór nie blokuje uzyskania najlepszego wyniku końcowego). W praktyce programistycznej często rozpoznaje się to po tym, że da się uzasadnić, iż po dokonaniu lokalnego wyboru pozostaje podproblem tego samego typu, a dokonany wybór może należeć do rozwiązania optymalnego.
Dlaczego pozostałe odpowiedzi są błędne?
- "Podziale problemu na podproblemy w celu uzyskania problemów łatwych do rozwiązania" opisuje podejście dziel i zwyciężaj (divide and conquer), gdzie problem rozbija się na mniejsze części, rozwiązuje niezależnie i scala wyniki (np. sortowanie przez scalanie).
- "Przeszukiwaniu zbioru danych aż do momentu znalezienia rozwiązania" pasuje do przeszukiwania (np. liniowego, BFS/DFS, brute force), a nie do zachłannej konstrukcji opartej o lokalne kryterium wyboru.
- "Odwołaniu się funkcji lub definicji do samej siebie" to definicja rekurencji, czyli techniki opisu/implementacji, która może występować w różnych algorytmach (także niezachłannych).
Na egzaminie warto zwracać uwagę na słowa-klucze: "w każdym kroku wybiera najlepsze" → zachłanny; "dzieli na podproblemy i scala" → dziel i zwyciężaj; "wywołuje samo siebie" → rekurencja; "przeszukuje aż znajdzie" → przeszukiwanie/brute force.