Přemýšlejte jako programátor
Tento kurz obsahuje přesně to, co vás programovací rychlokurzy (někdy i půlroční) obvykle nenaučí - přemýšlet o problému, rozdělit řešení na části a celé řešení předem naplánovat; umět uvažovat o rozsahu operací, které bude potřeba pro větší množství dat provést, a přizpůsobit tomu postup; seznámit se s rozsáhlejšími datovými strukturami, které přispívají ke zjednodušení nebo vůbec umožnění řešení některých úloh.
Celý kurz je koncipován jako jazykově agnostický, tj. nezávislý na konkrétním programovacím jazyce - předchozí programovací zkušenosti jsou vítané, ovšem nikoli nezbytné. Kurz klade velký důraz na praktické procvičení problematiky, samostatně nebo ve skupinkách.
Kód
DEV010
Délka kurzu
5
dní
(8:30 – 16:00)
Forma
V naší učebně nebo online
Vývojáře, uživatele, analytiky, manažery a IT pracovníky.
Základní pojmy, modely výpočtu a složitost
- Definice algoritmu, program vs. algoritmus, korektnost.
- Dekompozice problému: Jak rozbít velký úkol na malé, řešitelné podúlohy
- Reprezentace algoritmů: Vývojové diagramy (Flowcharts), pseudokód a další
- Notace: velké-O, Theta, Omega; praktické příklady porovnání.
- Časová a paměťová složitost: rozdíl a měření.
- Druhy vstupů (velikost, reprezentace) a amortizovaná složitost.
- Data vs. Informace: Jak počítač vidí svět (binární soustava stručně).
Základní datové struktury a práce s výrazy
- Pole, seznamy (jednosměrné/dvousměrné), zásobník, fronta, deque.
- Asymptotická složitost operací (přístup, vložení, mazání) pro každou DS.
- Asociativní pole / slovníky / hash mapy, stromy (binární strom, BST), vyvažování (základ).
- Praktické použití různých datových struktur
Vyhledávání, řazení a analýza konkrétních úloh
- Lineární vs. binární vyhledávání; podmínky pro binární vyhledávání; rozšíření binárního vyhledávání na ostatní problémy (parametrické hledání).
- Základní řadící algoritmy: Bubble/Insertion/Selection (vysvětlit), Merge sort, Quick sort, Heap sort — stabilita, průměrná/horší složitost.
- Algoritmické techniky: rozděl a panuj (divide and conquer), greedy, dynamické programování (základy), backtracking.
- Heuristiky a praktické aspekty (cache, konstanty, stabilita).
Grafové úlohy
- Základní pojmy: vrcholy, hrany, orientované vs. neorientované grafy, vážené grafy
- Reprezentace: adjacency list, adjacency matrix, edge list — kdy co použít
- Stromy jako speciální typ grafu: Kořen, listy, binární stromy
- Procházení grafu - BFS, DFS: princip, složitosti, použití
Algoritmické vzory, složitější techniky, návrat k chybám a Event-Driven přístup
- Sliding window, two pointers, divide-and-conquer rekurzivně, memoizace, greedy patterns.
- Základy dynamického programování a dalších technik
- Event-Driven programování: princip, model událostí, callbacky/promisy/asynchronní zpracování
- Chyby: typy chyb (logické, runtime, design), ladění, testování (unit tests, property-based testing), invariance, aserce.
Účastníci pochopí základní pojmy algoritmizace, třídy složitosti a naučí se porovnávat postupy podle časové a paměťové náročnosti.
Naučí se vybrat vhodné datové struktury a algoritmy pro konkrétní úlohy (vyhledávání, řazení, grafy, apod.).
Procvičí návrh, analýzu a implementaci základních algoritmů.
Kurz bude klást důraz na praktická cvičení + diskuzi návrhů řešení; implementace v jazyce dle volby účastníků nebo v pseudokódu.
Všechny učebny jsou vybaveny nadstandardními počítači připojenými k Internetu, učebny jsou prostorné, klimatizované, bezbariérové a s připojením na Wi-Fi. V případě zájmu lze školení absolvovat online live.
Všichni účastníci školení obdrží materiály společnosti OKsystem.
Ceny jsou bez DPH. OKsystem a.s. si vyhrazuje právo změnit termín a cenu školení.
Prohlédněte si některé podobné kurzy z naší široké nabídky.
Neváhejte se na nás obrátit. Jsme vám k dispozici a rádi vám pomůžeme.
Jaké jsou hlavní výhody našeho školicího centra?
Jsme na trhu již víc než 36 let a máme v tomto oboru rozsáhlé zkušenosti.
Jsme vzdělávací středisko s bohatou historií a tradicí.
Základem každého kvalitního vzdělání jsou dobří a zkušení lektoři a na tom si v OKškolení obzvlášť zakládáme. Naši špičkoví lektoři tu na vás čekají.
Všechny učebny jsou prostorné, klimatizované, bezbariérové a vybaveny nadstandardními počítači, s připojením na Wi-Fi.
Ochrana investic do vzdělávání, věrnostní program, slevy, občerstvení, dotace a další.
Neváhejte se na nás obrátit ať už máte jakýkoliv dotaz.
Potřebujete toho o nás vědět víc, nebo nás raději chcete kontaktovat pomocí formuláře?