Informatică
Limbaje formale
Ce sunt un limbaj formal, un alfabet și un cuvânt. Noțiunile de bază ale teoriei limbajelor formale, explicate prin comparație cu limba obișnuită și pe exemple.
Automat finit
Automatul finit ca model de calcul cu stări și tranziții. Definiția, diagrama de stări, formalizarea calculului și exemple de cuvinte acceptate.
Minimizarea automatului
Stările inaccesibile ale unui automat finit, în care nu se poate ajunge din starea inițială. Definiția și cum le eliminăm în siguranță din automat.
Limbaje regulate
Limbajele regulate sunt închise la reuniune, intersecție, concatenare și închiderea Kleene. Ce înseamnă închiderea la o operație și de ce este adevărată pentru limbajele regulate.
Expresii regulate
Ce este o expresie regulată și cum descrie ea o mulțime de cuvinte. Definiția, comparația cu expresiile aritmetice și legătura cu automatele finite.
Numărul de valori unice
Linear Counting: cum estimăm numărul de valori unice din date foarte mari. Funcții hash, vectori de biți și de ce abordarea naivă nu ajunge.
Filtrul Bloom
Filtrul Bloom este o structură de date probabilistică care răspunde rapid dacă un element se află în mulțime. Principiul, funcțiile hash și utilizarea practică.
Cifrul lui Cezar
Cum funcționează cifrul lui Cezar, una dintre cele mai vechi metode de criptare a textului. Principiul deplasării literelor, generalizarea cifrului și un instrument online de criptare.
Cifrul Vigenère
Cifrul Vigenère folosește mai multe alfabete și de aceea rezistă analizei frecvențelor. Principiul criptării, pătratul Vigenère, alegerea cheii și instrumentul online.