Single Responsibility Principle – SRP

Oznacza to, że nasze klasy czy metody powinny posiadać tylko jedną odpowiedzialność. Nie powinien istnieć więcej niż jeden powód abyśmy chcieli zmodyfikować naszą klasę. Nie możemy tworzyć fabryki, która produkuje wszystko statki, rowery, samochody i jednocześnie szyje spodnie. Każda klasa powinna być odpowiedzialna za jedną rzecz.

Jak Zastosować 5 Zasad SOLID ?

Postaram się wam teraz przedstawić ogólne zasady, jakie powinny być stosowane aby pisać dobry kod. Zapewne wszyscy chcielibyśmy aby nasze aplikacje jak i ich architektura była jak najwyższej jakości.

Zrozumienie algorytmu sortowania Quick Sort

Quick Sort to jedno z najszybszych i najczęściej używanych algorytmów sortowania. Jest to algorytm oparty na strategii “dziel i zwyciężaj”. Działa poprzez wybór elementu zwanego “pivotem”, podział kolekcji na elementy mniejsze i większe od pivota, a następnie sortowanie tych dwóch pod kolekcji.

Merge Sort : Efektywny Algorytm Sortowania Oparty na Dziel i Zwyciężaj

Merge Sort to skuteczny algorytm sortowania wykorzystujący strategię dziel i zwyciężaj. Charakteryzuje się stabilnością oraz czasem złożoności O(n log n), co czyni go idealnym do zastosowań w dużych zbiorach danych. Proces algorytmu polega na dzieleniu zbioru na mniejsze podzbiory, które są następnie scalane w posortowaną całość. Merge Sort znajduje zastosowanie w programowaniu, systemach baz danych oraz przetwarzaniu dużych plików, co sprawia, że jest powszechnie stosowany w praktyce. W artykule poznasz zarówno zalety, jak i wady tego algorytmu oraz jego różnorodne zastosowania.

Sortowanie przez Wstawianie w C#

Sortowanie przez wstawianie (ang. insertion sort) to jeden z najprostszych algorytmów sortowania, który naturalnie odzwierciedla sposób, w jaki układamy karty do gry w ręce. Bierzesz kolejną kartę i wkładasz ją na właściwe miejsce wśród już ułożonych – dokładnie tak samo działa ten algorytm.

Wyszukiwanie liniowe

Powiedzmy, że mamy tablicę array[] która składa się z n elementów.
I teraz naszym zadaniem jest napisać metodę, która znajdzie wybrany przez Nas element w tej tablicy.

Bucket Sort

Sortowanie kubełkowe (Bucket Sort) to efektywny algorytm sortowania, który jest szczególnie skuteczny w przypadku równomiernie rozłożonych danych wejściowych.

Selection Sort

The selection sort algorithm sorts an array by repeatedly finding the minimum element from unsorted part and putting it at the beginning.

Algorytm Kruskala

Algorytm Kruskala to algorytm stosowany w teorii grafów do znajdowania minimalnego drzewa rozpinającego w grafie ważonym, co oznacza, że łączy on wszystkie wierzchołki grafu w drzewo bez cykli, minimalizując sumę wag krawędzi.

Binary Search

Algorytm Binary Search (inaczej znany jako wyszukiwanie binarne) to efektywny algorytm służący do wyszukiwania elementu w posortowanym zbiorze danych. Działa on przez podział zbioru na dwie połowy i porównywanie wartości środkowej z elementem, który jest poszukiwany.

Sortowania Według Wyboru

Algorytm sortowania sortuje tablicę, wielokrotnie znajdując minimalny element z nieposortowanej części tablicy i umieszczając go na początku. Algorytm utrzymuje dwie podrzędne tablice w danej tablicy.