algorithmic-complexity
/algorithmic-complexity
Wyjaśnia, jak czas działania i pamięć rosną z rozmiarem danych i kiedy odpowiedź asymptotyczna bywa myląca, przy wyborze podejścia i przeglądzie pętli po danych.
- Autor
- Amey-Thakur ↗
- Repozytorium
- AI-SKILLS ↗
- Licencja
- MIT
- Ostatnia zmiana repozytorium
- 05.09.2026
Ocena i bezpieczeństwo
- Pliki w paczce
- 1
- Skrypty
- 0
- Komentarze HTML
- 0
- Adresy URL w SKILL.md
- 0
Brak sygnałów. Repozytorium zmienione 05.09.2026, bez odwołań do wycofanych modeli i API.
MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.
Co robi i kiedy
Wyjaśnia, jak czas działania i pamięć rosną z rozmiarem danych i kiedy odpowiedź asymptotyczna bywa myląca, przy wyborze podejścia i przeglądzie pętli po danych.
Oryginalny opis (EN)
Reason about how running time and memory grow with input size, and know when the asymptotic answer is the wrong one. Use when choosing an approach, reviewing code that loops over data, or explaining why something slows at scale.
Jak działa
- Method
- Boundaries
Podgląd SKILL.md
--- name: algorithmic-complexity description: Reason about how running time and memory grow with input size, and know when the asymptotic answer is the wrong one. Use when choosing an approach, reviewing code that loops over data, or explaining why something slows at scale. --- # Algorithmic complexity Complexity describes growth, not speed. An algorithm with worse asymptotics often wins on real input sizes, and one with good asymptotics can be slow because of constants and memory behaviour. Knowing both is what makes the analysis useful. ## Method 1. **Identify what grows.** Complexity is relative to a named input: number of records, size of text, number of users. Analysis without naming the variable is meaningless. 2. **Count the dominant operation.** The one inside the innermost loop or the recursive step. Everything else disappears into constants at scale. 3. **Watch for hidden loops.** A lookup inside a loop that is itself linear makes the whole thing quadratic, and library calls hide this routinely (see n-plus-one-queries). 4. **Analyse space alongside time.** An approach that is fast and holds everything in memory fails at a size the time analysis says is fine. 5. **Distinguish worst, average, and amortised.** Hash lookups are constant on average and linear in the worst case, and which one matters depends on whether an adversary chooses your input. 6. **Check the real input size before optimising.** Quadratic on twenty items is instant, and replacing it with a complex linear algorithm is a net loss (see performance-optimization). 7. **Measure to confirm.** Constants, cache behaviour, and allocation dominate at small sizes, so analysis predicts the shape and measurement gives the answer (see profiling-cpu). ## Boundaries Complexity predicts scaling, not performance; two algorithms with the same class can differ by an order of magnitude in practice. Real workloads have distributions that average-case analysis may not match. Parallelism and memory hierarchy change the picture in ways simple counting does not capture (see cpu-architecture).
Wersje
W bazie nie ma innych skilli o nazwie algorithmic-complexity.
Migawka bazy z 13.11.2026 · wersja paczki 0da90285d3b3 (skrót SHA-256 całej paczki)
Pobrania w ostatnich 30 dniach: 0 · ranking
Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.
Podobne skille
- 100algorithmic-complexity-review
Przegląda kod pod kątem przypadkowych problemów ze złożonością Big-O, takich jak zagnieżdżone pętle, zapytania N+1, rekursja wykładnicza i kwadratowe budowanie ciągów. - 100code-complexity-analysis
Ocenia wydajność kodu przez złożoność czasową i pamięciową oraz wskazuje wąskie gardła i sposoby optymalizacji. - 100dsa-time-space-complexity-big-o-analysis
Dokładnie analizuje asymptotyczny czas działania algorytmu, pamięć stosu i pamięć pomocniczą na potrzeby rozmów rekrutacyjnych. - 100algorithmic-intelligence
Optymalizuje wydajność kodu przetwarzającego dane: znajduje algorytm i strukturę danych o najniższej możliwej złożoności bez zmiany działania dla użytkowników. - 90big-o-in-practice
Stosuje analizę złożoności tam, gdzie rozmiar danych rzeczywiście decyduje o wydajności, i pomija ją tam, gdzie dominują stałe czynniki, przy wyborze algorytmu lub struktury danych. - 100performance-code-review-complexity-allocations
Wykrywa w przeglądzie kodu nieefektywne algorytmy, zapytania N+1 i nadmierne alokacje pamięci.