diff options
| Commit | 69ff9496c77c4ca943a4dd680f9e0992adaad85a (patch) | |
|---|---|---|
| Author | 2023-09-15 15:21:41 +0300 | |
| Committer | 2023-10-01 21:26:55 +0300 | |
| Files | b0858669cf42d75fd8babd36de5eba1188c80fa9 | |
| syndamia.com-69ff9496c77c4ca943a4dd680f9e0992adaad85a.tar syndamia.com-69ff9496c77c4ca943a4dd680f9e0992adaad85a.tar.gz syndamia.com-69ff9496c77c4ca943a4dd680f9e0992adaad85a.zip | ||
| Parent | 2cf0d8cf9741e1d7c9a01c4ad31b66119fff064b (diff) | |
(te/up-2023/w1) Added tips and finished information for first 2 subjects
1 files changed, 66 insertions, 14 deletions
| -rw-r--r-- | src/teaching/upp-2023/week1/index.md | 80 |
diff --git a/src/teaching/upp-2023/week1/index.md b/src/teaching/upp-2023/week1/index.md index db68087..f814d28 100644 --- a/src/teaching/upp-2023/week1/index.md +++ b/src/teaching/upp-2023/week1/index.md @@ -125,6 +125,26 @@ +&&slide + +## Няколко съвета в позицията ми на третокурсник + +&&lineb2 + +&&font35 + +- **НЕ плагиатствайте!** + **НЕ си качвайте решения на задачи (особено контролни/домашни) онлайн!** + Системата е умна, не си мислете, че като промените имена и форматиране на работи няма да ви хване. + Много хора се прецакаха! +- **Следвайте материала, който ви се преподава!** + За хората с опит, ще дойде време когато ще искате да приложите лични знания и практики. + Ако не е казано някъде, не го правите и не го обмисляте! + +&&/font &&/slide + + + &&clide &¢ered # ФМИ в контекста на програмирането @@ -177,19 +197,38 @@ Има добра причина, има директни и основни приложения в компютрите, и без тях щяхме още да сме пещерняци. Нека обясня защо: +&&lineb2 + ### Дискретни структури Смесица на уводите в няколко предмета: -- **Булева алгебра**: как работим и смятаме с истина/лъжа, с 0/1. - Както знаем, това е в основата на компютрите. +- **Булева алгебра**: как работим и смятаме с истина/лъжа, с 0/1. + Полезност: + + - Доказана е [еквивалентност между ел. вериги и булевата алгебра](https://en.wikipedia.org/wiki/A_Symbolic_Analysis_of_Relay_and_Switching_Circuits). + - Много типове данни и математически операции могат да се сведат до булева алгебра и работа с памет. + +&&/slide + + + +&&slide + +### Дискретни структури (продължение) + +- **Теория на множествата**: множество е някаква съвкупност от обекти и дефинираме различни операции с тези съвкупности. + Полезност: - Решава следните проблеми: TODO + - Позволява ни да третираме колекция от математически обекти като математически обект[^importance-of-sets]. + Използва се в основата на много математики; колкото са полезни те, толкова са и множествата. -- **Теория на множествата**: с множества разглеждаме много от важните методи за структуриране и обработване на данни от всякакъв вид. - Такива структури се намират във всеки кът на софтуерната индустрия. +- **Комбинаторика**: като цяло изследва бройки на неща (с/без повторения, в ограничено пространство, ...). + Полезност[^importance-of-combinatorics]: - Решава: + - Много често използвана за анализ и дизайн на алгоритми и структори от данни + - Употребява се при оптимизации и теория на кодирането (компресиране на данни, отстраняване на грешки, криптография) + - Есенциална в теория на графите &&/slide @@ -199,13 +238,13 @@ ### Дискретни структури (продължение) -- **Комбинаторика**: отчасти благодарение на нея, можем да предвидим ефикасността на огромен ред структури и алгоритми. - - Решава: +&&lineb5 -- **Теория на графите**: граф е една определена структура, която ни позволява да моделираме много аспекти на реалния свят и да разрешим не малко трудни проблеми. +- **Теория на графите**: граф е съвкупност от някакви обекти и връзки между тях. + Полезност: - Решава: + - Позволява модерлиране на много естествени структури: интернет мрежите, географски карти (места и пътищата между тях), йерархии, биологически мрежи и так. нат. + - Използва се във важни структури от данни като [heap](https://en.wikipedia.org/wiki/Heap_%28data_structure%29) (и интересната [fibonacci heap](https://www.youtube.com/watch?v=6JxvKfSV9Ns)) и [trie](https://en.wikipedia.org/wiki/Trie) &&/slide @@ -215,15 +254,20 @@ ### Езици, автомати и изчислимост -На английски се нарича "theoretical computer science". -Можем формално да опишем и докажем твърдения за теоретични компютри, които винаги са директно приложими върху реалните компютри. -Така са успели да разработят всичко нужно за производството на хардуер, за писането на програми и така разглеждаме програми, които са на ръба (или отвъд него) на възможностите на компютрите като цяло. +Това е част от материала в по-общото "theoretical computer science". +Можем формално да опишем и докажем теоретични компютри и програми. +Тези резултати са директно приложими върху ралните компютри. + +Дефакто работим с компютрите чисто теоретически, с възможността да правим точни доказателства и да определим всички характеристики на един компютър. + ### Алгебра 1 Особено полезен клон на алгебрата, може да моделира много неща от физическия свят. Повечето компютърна графика се основава на нея и има големи приложения в machine learning, обработка на изображения и алгоритми за препоръки. +TODO + &&/slide @@ -232,4 +276,12 @@ ### Диференциално и интегрално смятане +<!-- Математиките извън първи курс също са важни, за вас не са релевантни. --> + &&/slide + + + + +[^importance-of-sets]: [https://math.stackexchange.com/a/536172](https://math.stackexchange.com/a/536172) +[^importance-of-combinatorics]: [https://math.stackexchange.com/questions/2146051/where-do-combinatorics-play-a-role-in-computer-science](https://math.stackexchange.com/questions/2146051/where-do-combinatorics-play-a-role-in-computer-science) |