kolos z algo xdd

This commit is contained in:
2025-12-02 16:56:35 +01:00
parent eb76bc51e8
commit 6d1a1eae03
17 changed files with 414 additions and 311 deletions

View File

@@ -4,16 +4,16 @@
"type": "split", "type": "split",
"children": [ "children": [
{ {
"id": "6d10add84c131dea", "id": "ad62e60c932c01ab",
"type": "tabs", "type": "tabs",
"children": [ "children": [
{ {
"id": "6cda958d137b4355", "id": "7d6a068f0e3326ff",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "markdown", "type": "markdown",
"state": { "state": {
"file": "uczelnia/1_semestr/algebra_liniowa/Algebra liniowa.md", "file": "uczelnia/1_semestr/algorytmy/Notatka przed kolokwium.md",
"mode": "source", "mode": "source",
"source": false, "source": false,
"backlinks": true, "backlinks": true,
@@ -28,83 +28,10 @@
} }
}, },
"icon": "lucide-file", "icon": "lucide-file",
"title": "Algebra liniowa" "title": "Notatka przed kolokwium"
}
},
{
"id": "ba23a423c1d4d583",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "uczelnia/1_semestr/matematyka_ze_statystyką/Pierwsze kolokwium.md",
"mode": "source",
"source": false,
"backlinks": true,
"backlinkOpts": {
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
}
},
"icon": "lucide-file",
"title": "Pierwsze kolokwium"
}
},
{
"id": "5b6b74681483cc48",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "uczelnia/1_semestr/Informacje.md",
"mode": "source",
"source": false,
"backlinks": true,
"backlinkOpts": {
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
}
},
"icon": "lucide-file",
"title": "Informacje"
}
},
{
"id": "a0175235b7cbeed8",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Tranzystory unipolarne.md",
"mode": "source",
"source": false,
"backlinks": true,
"backlinkOpts": {
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
}
},
"icon": "lucide-file",
"title": "Tranzystory unipolarne"
} }
} }
], ]
"currentTab": 3
} }
], ],
"direction": "vertical" "direction": "vertical"
@@ -254,20 +181,30 @@
"hiddenItems": { "hiddenItems": {
"switcher:Otwórz okno szybkiego wyboru": false, "switcher:Otwórz okno szybkiego wyboru": false,
"graph:Otwórz graf": false, "graph:Otwórz graf": false,
"canvas:Stwórz nową tablicę": false,
"command-palette:Otwórz listę poleceń": false, "command-palette:Otwórz listę poleceń": false,
"bases:Stwórz nową bazę danych": false, "bases:Stwórz nową bazę danych": false,
"obsidian-git:Open Git source control": false, "obsidian-git:Open Git source control": false,
"obsidian-excalidraw-plugin:New drawing": false, "obsidian-excalidraw-plugin:New drawing": false
"canvas:Stwórz nową tablicę": false
} }
}, },
"active": "a0175235b7cbeed8", "active": "7d6a068f0e3326ff",
"lastOpenFiles": [ "lastOpenFiles": [
"media/Pasted image 20251202163629.png",
"media/Pasted image 20251202151437.png",
"media/Pasted image 20251202151416.png",
"media/Pasted image 20251202151233.png",
"media/Pasted image 20251202145825.png",
"media/Pasted image 20251202145610.png",
"uczelnia/1_semestr/algorytmy/Algorytmy.md",
"uczelnia/1_semestr/algorytmy/Notatka przed kolokwium.md",
"uczelnia/1_semestr/algorytmy/Obliczanie sprawności algorytmu.md",
"uczelnia/1_semestr/algorytmy/Podstawy algorytmiki.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Tranzystory unipolarne.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/laby/szyfr_anachroniczny.py", "uczelnia/1_semestr/wprowadzenie_do_informatyki/laby/szyfr_anachroniczny.py",
"media/Pasted image 20251127192756.png", "media/Pasted image 20251127192756.png",
"media/Pasted image 20251127192208.png", "media/Pasted image 20251127192208.png",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Rzeczy na wejściówkę 2.md", "uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Rzeczy na wejściówkę 2.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Tranzystory unipolarne.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Rzeczy na wejściówkę 1.md", "uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Rzeczy na wejściówkę 1.md",
"uczelnia/ZUT.md", "uczelnia/ZUT.md",
"Bez nazwy.canvas", "Bez nazwy.canvas",
@@ -286,29 +223,19 @@
"media/Pasted image 20251119200743.png", "media/Pasted image 20251119200743.png",
"uczelnia/1_semestr/matematyka_ze_statystyką/Szeregi.md", "uczelnia/1_semestr/matematyka_ze_statystyką/Szeregi.md",
"media/Pasted image 20251119193520.png", "media/Pasted image 20251119193520.png",
"media/Pasted image 20251119193425.png",
"media/Pasted image 20251119193335.png",
"media/Pasted image 20251118195420.png",
"media/Pasted image 20251118194405.png",
"uczelnia/1_semestr/algebra_liniowa/Kolokwium liczby zespolone i wielomiany.md", "uczelnia/1_semestr/algebra_liniowa/Kolokwium liczby zespolone i wielomiany.md",
"uczelnia/1_semestr/algebra_liniowa/Algebra liniowa.md", "uczelnia/1_semestr/algebra_liniowa/Algebra liniowa.md",
"media/Pasted image 20251116135721.png",
"Excalidraw/Drawing 2025-11-16 13.55.00.excalidraw.md", "Excalidraw/Drawing 2025-11-16 13.55.00.excalidraw.md",
"uczelnia/1_semestr/algebra_liniowa/Liczby zespolone.md", "uczelnia/1_semestr/algebra_liniowa/Liczby zespolone.md",
"uczelnia/1_semestr/algebra_liniowa/Wielomiany.md", "uczelnia/1_semestr/algebra_liniowa/Wielomiany.md",
"uczelnia/1_semestr/algorytmy/Podstawy algorytmiki.md",
"uczelnia/1_semestr/algorytmy/Obliczanie sprawności algorytmu.md",
"uczelnia/1_semestr/algorytmy/Algorytmy.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/Architektury komputerowe.md", "uczelnia/1_semestr/wprowadzenie_do_informatyki/Architektury komputerowe.md",
"uczelnia/1_semestr/programowanie/Programowanie.md", "uczelnia/1_semestr/programowanie/Programowanie.md",
"Dziura elektronowa.md", "Dziura elektronowa.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/Zapis liczb rzeczywistych.md", "uczelnia/1_semestr/wprowadzenie_do_informatyki/Zapis liczb rzeczywistych.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/Kryptografia.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład", "uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/2 sykład", "uczelnia/1_semestr/wprowadzenie_do_informatyki/2 sykład",
"uczelnia/1_semestr/programowanie/4 wykład", "uczelnia/1_semestr/programowanie/4 wykład",
"uczelnia/1_semestr/programowanie/3 wykład", "uczelnia/1_semestr/programowanie/3 wykład",
"uczelnia/1_semestr/programowanie/2 wykład", "uczelnia/1_semestr/programowanie/2 wykład"
"uczelnia/1_semestr/programowanie/1 wykład"
] ]
} }

View File

@@ -1,217 +0,0 @@
{
"main": {
"id": "b66eb7009a35bc77",
"type": "split",
"children": [
{
"id": "8009748db1465677",
"type": "tabs",
"children": [
{
"id": "caad354a936251eb",
"type": "leaf",
"state": {
"type": "graph",
"state": {},
"icon": "lucide-git-fork",
"title": "Widok grafu"
}
}
]
}
],
"direction": "vertical"
},
"left": {
"id": "b02ff0065d6b8746",
"type": "split",
"children": [
{
"id": "f12554db889f7231",
"type": "tabs",
"children": [
{
"id": "95f2772859773c70",
"type": "leaf",
"state": {
"type": "file-explorer",
"state": {
"sortOrder": "alphabetical",
"autoReveal": false
},
"icon": "lucide-folder-closed",
"title": "Przeglądarka plików"
}
},
{
"id": "b249b8fa6b58a15c",
"type": "leaf",
"state": {
"type": "search",
"state": {
"query": "",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical"
},
"icon": "lucide-search",
"title": "Szukaj"
}
},
{
"id": "bb931213e9647e7a",
"type": "leaf",
"state": {
"type": "bookmarks",
"state": {},
"icon": "lucide-bookmark",
"title": "Ulubione"
}
}
]
}
],
"direction": "horizontal",
"width": 200
},
"right": {
"id": "635fb7694c1bcea6",
"type": "split",
"children": [
{
"id": "543ba2c01ccd0d88",
"type": "tabs",
"children": [
{
"id": "68d39a287100b20a",
"type": "leaf",
"state": {
"type": "backlink",
"state": {
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-coming-in",
"title": "Backlinks"
}
},
{
"id": "d107c01e753fe187",
"type": "leaf",
"state": {
"type": "outgoing-link",
"state": {
"linksCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-going-out",
"title": "Outgoing links"
}
},
{
"id": "3e764925354544d4",
"type": "leaf",
"state": {
"type": "tag",
"state": {
"sortOrder": "frequency",
"useHierarchy": true,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-tags",
"title": "Tags"
}
},
{
"id": "b5d77fe1f7335692",
"type": "leaf",
"state": {
"type": "outline",
"state": {
"followCursor": false,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-list",
"title": "Outline"
}
}
]
}
],
"direction": "horizontal",
"width": 300,
"collapsed": true
},
"left-ribbon": {
"hiddenItems": {
"switcher:Otwórz okno szybkiego wyboru": false,
"graph:Otwórz graf": false,
"canvas:Stwórz nową tablicę": false,
"daily-notes:Otwórz codzienną notatkę": false,
"templates:Wstaw szablon": false,
"command-palette:Otwórz listę poleceń": false,
"bases:Stwórz nową bazę danych": false,
"obsidian-git:Open Git source control": false,
"obsidian-excalidraw-plugin:New drawing": false
}
},
"active": "caad354a936251eb",
"lastOpenFiles": [
"uczelnia/1_semestr/algebra_liniowa/1_wykład/Ciało algebraiczne.md",
"uczelnia/1_semestr/algorytmy/2 wykład/Cykl eulera.md",
"uczelnia/1_semestr/matematyka_ze_statystyką/3 wykład/3 wykład.md",
"media/Pasted image 20251019164857.png",
"uczelnia/1_semestr/matematyka_ze_statystyką/Matematyka ze statystyką.md",
"uczelnia/1_semestr/matematyka_ze_statystyką/3 wykład",
"uczelnia/1_semestr/fizyka_dla_informatyków/Fizyka dla informatyków.md",
"uczelnia/1_semestr/algorytmy/3 wykład/Sprawność algorytmów.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/3 wykład/3 wykład.md",
"uczelnia/1_semestr/algorytmy/Bez nawy",
"uczelnia/1_semestr/fizyka_dla_informatyków/3 wykład/Zasady dynamiki.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/3 wykład",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład/Architektura Harvardzka.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład/3 wykład.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład/Port.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład/DMA.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład/Sterownik.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład/Taksonomia Flynna.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład/RISC i CISC.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/Wprowadzenie do informatyki.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład/Architektura von Neumann'a.md",
"Excalidraw/magistrala.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład/Przetwarzanie danych.md",
"Excalidraw/Przetwarzanie danych_obrazek.md",
"uczelnia/1_semestr/programowanie/Programowanie.md",
"uczelnia/1_semestr/algebra_liniowa/2 wykład/Wzory eulera.md",
"uczelnia/1_semestr/programowanie/2 wykład/Untitled.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład",
"uczelnia/1_semestr/algebra_liniowa/2 wykład/2 wykład.md",
"uczelnia/1_semestr/algebra_liniowa/2 wykład/Pierwiastkowanie liczb zespolonych.md",
"uczelnia/1_semestr/algebra_liniowa/Algebra liniowa.md",
"media/Pasted image 20251013195607.png",
"media/Pasted image 20251011092828.png",
"media/Pasted image 20251011092804.png",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/2 sykład",
"uczelnia/1_semestr/algorytmy/3 wykład",
"uczelnia/1_semestr/matematyka_ze_statystyką/2_wykład",
"uczelnia/1_semestr/algorytmy/2 wykład",
"uczelnia/1_semestr/fizyka_dla_informatyków/2 wykład",
"media/Pasted image 20251007211930.png",
"media/Pasted image 20251007211823.png",
"uczelnia/1_semestr/fizyka_dla_informatyków/1_wykład",
"media/Pasted image 20251006151730.png",
"media/Pasted image 20251006152754.png",
"media/Pasted image 20251006152559.png",
"media/Pasted image 20251006152512.png",
"Bez nazwy.canvas"
]
}

View File

@@ -0,0 +1,239 @@
{
"main": {
"id": "0b83f88d5b319116",
"type": "split",
"children": [
{
"id": "325d87bf607db4f2",
"type": "tabs",
"children": [
{
"id": "b4fd77e53854efdd",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "uczelnia/1_semestr/wprowadzenie_do_informatyki/webowka/Historia internetu czy coś.md",
"mode": "source",
"source": false,
"backlinks": true,
"backlinkOpts": {
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
}
},
"icon": "lucide-file",
"title": "Historia internetu czy coś"
}
}
]
}
],
"direction": "vertical"
},
"left": {
"id": "7139420c0e271bf7",
"type": "split",
"children": [
{
"id": "5324c17a65e886ad",
"type": "tabs",
"children": [
{
"id": "a150f6cde24948cb",
"type": "leaf",
"state": {
"type": "search",
"state": {
"query": "",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical"
},
"icon": "lucide-search",
"title": "Search"
}
},
{
"id": "0eaab16550e671c3",
"type": "leaf",
"state": {
"type": "bookmarks",
"state": {},
"icon": "lucide-bookmark",
"title": "Bookmarks"
}
},
{
"id": "657d908e61a1dc34",
"type": "leaf",
"state": {
"type": "file-explorer",
"state": {
"sortOrder": "alphabetical",
"autoReveal": false
},
"icon": "lucide-folder-closed",
"title": "Files"
}
}
],
"currentTab": 2
}
],
"direction": "horizontal",
"width": 273
},
"right": {
"id": "7a99302d7724db97",
"type": "split",
"children": [
{
"id": "cb4661b338000e7d",
"type": "tabs",
"children": [
{
"id": "42434d47c278eb66",
"type": "leaf",
"state": {
"type": "backlink",
"state": {
"file": "uczelnia/1_semestr/Informacje.md",
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-coming-in",
"title": "Linki zwrotne do Informacje"
}
},
{
"id": "38fc1f5ffdabba4c",
"type": "leaf",
"state": {
"type": "outgoing-link",
"state": {
"linksCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-going-out",
"title": "Outgoing links"
}
},
{
"id": "0c41d8697cde3ae5",
"type": "leaf",
"state": {
"type": "tag",
"state": {
"sortOrder": "frequency",
"useHierarchy": true,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-tags",
"title": "Tags"
}
},
{
"id": "68e6b8fd1f618967",
"type": "leaf",
"state": {
"type": "outline",
"state": {
"followCursor": false,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-list",
"title": "Outline"
}
},
{
"id": "9592358348091ef9",
"type": "leaf",
"state": {
"type": "git-view",
"state": {},
"icon": "lucide-ghost",
"title": "git-view"
}
}
]
}
],
"direction": "horizontal",
"width": 300,
"collapsed": true
},
"left-ribbon": {
"hiddenItems": {
"switcher:Open quick switcher": false,
"graph:Open graph view": false,
"command-palette:Open command palette": false,
"bases:Create new base": false,
"obsidian-git:Open Git source control": false,
"obsidian-excalidraw-plugin:New drawing": false
}
},
"active": "b4fd77e53854efdd",
"lastOpenFiles": [
"uczelnia/1_semestr/Informacje.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/webowka/Historia internetu czy coś.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/historia/Architektury komputerowe.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/historia",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/webowka",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Rzeczy na wejściówkę 2.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/laby/szyfr_cezara.py~",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/laby/szyfr_cezara.py",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/laby/SzymonPrusiewiczLab1.py",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/laby",
"uczelnia/1_semestr/matematyka_ze_statystyką/Pierwsze kolokwium.md",
"uczelnia/1_semestr/matematyka_ze_statystyką/Matematyka ze statystyką.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Elektryczna.md",
"media/Pasted image 20251120145203.png",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Diody.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Podstawy elektryki.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Prąd.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/RLC.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/Elektryczna/Rzeczy na wejściówkę 1.md",
"media/Pasted image 20251119200743.png",
"uczelnia/1_semestr/matematyka_ze_statystyką/Szeregi.md",
"media/Pasted image 20251119193520.png",
"media/Pasted image 20251119193425.png",
"media/Pasted image 20251119193335.png",
"media/Pasted image 20251118195420.png",
"media/Pasted image 20251118194405.png",
"uczelnia/1_semestr/algebra_liniowa/Kolokwium liczby zespolone i wielomiany.md",
"uczelnia/1_semestr/algebra_liniowa/Algebra liniowa.md",
"media/Pasted image 20251116135721.png",
"Excalidraw/Drawing 2025-11-16 13.55.00.excalidraw.md",
"media/Pasted image 20251116121244.png",
"uczelnia/1_semestr/algebra_liniowa/Liczby zespolone.md",
"uczelnia/1_semestr/algebra_liniowa/Wielomiany.md",
"media/Pasted image 20251113165634.png",
"uczelnia/1_semestr/algorytmy/Podstawy algorytmiki.md",
"uczelnia/1_semestr/algorytmy/Obliczanie sprawności algorytmu.md",
"uczelnia/1_semestr/algorytmy/Algorytmy.md",
"uczelnia/1_semestr/programowanie/Programowanie.md",
"Dziura elektronowa.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/historia/Zapis liczb rzeczywistych.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/historia/Kryptografia.md",
"uczelnia/1_semestr/fizyka_dla_informatyków/Fizyczna/Zasady dynamiki.md",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/3 wykład",
"uczelnia/1_semestr/wprowadzenie_do_informatyki/2 sykład",
"uczelnia/1_semestr/programowanie/4 wykład",
"uczelnia/1_semestr/programowanie/3 wykład"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 646 KiB

View File

@@ -5,4 +5,4 @@
[Matematyka ze statystyką](matematyka_ze_statystyką/Matematyka%20ze%20statystyką.md) [Matematyka ze statystyką](matematyka_ze_statystyką/Matematyka%20ze%20statystyką.md)
[Programowanie](programowanie/Programowanie.md) [Programowanie](programowanie/Programowanie.md)
[Fizyka dla informatyków](fizyka_dla_informatyków/Fizyka%20dla%20informatyków.md) [Fizyka dla informatyków](fizyka_dla_informatyków/Fizyka%20dla%20informatyków.md)
[Wprowadzenie do informatyki](wprowadzenie_do_informatyki/Wprowadzenie%20do%20informatyki.md) [Wprowadzenie do informatyki](wprowadzenie_do_informatyki/historia/Wprowadzenie%20do%20informatyki.md)

View File

@@ -0,0 +1,101 @@
# Algorytm
## Co to jest algorytm
Algorytm - dokładny przepis podający sposób rozwiązania określonego zadania (algorytmicznego) w skończonej liczbie kolejnych kroków; zestaw poleceń odnoszących się do pewnych obiektów, ze wskazaniem porządku, w jakim mają być te polecenia realizowane.
W kontekście komputera - zestaw kroków, które maszyna ma wykonać, by osiągnąć konkretny cel.
![](../../../media/Pasted%20image%2020251202145825.png)
## Istotne metody opisu algorytmu
- Formalizm matematyczny
- Pseudokod
- Schemat blokowy
### Schemat blokowy
[źródło grafiki](https://www.korepetycjezinformatyki.pl/schemat-blokowy/)
![](../../../media/Pasted%20image%2020251202163629.png)
# Algorytm sortowania
## Sortowanie bąbelkowe
![](../../../media/Pasted%20image%2020251202151437.png)
Porównujemy po kolei wszystkie kolejne party w tablicy i zamieniamy miejscami.
## Sortowanie przez wybieranie
![](../../../media/Pasted%20image%2020251202151233.png)
Wybieramy z tablicy najmniejsze elementy i wstawiamy je na początek.
(TE ALGORYTMY BYŁYBY O WIELE BARDZIEJ ZROZUMIAŁE GDYBY ZAMIAST LOSOWYCH LITEREK DAWAŁ JAKIEŚ SENSOWNE SŁOWA JAKO NAZWY ZMIENNYCH)
## Sortowanie przez wstawianie
![](../../../media/Pasted%20image%2020251202151416.png)
Przechodzimy przez całą tablicę i porównujemy kolejne elementy. Coś jak bubble sort, ale zamiast przechodzić parami to porównujemy, aż nie będzie mniejszego elementu.
# Złożoność obliczeniowa algorytmów
## Źródła
- https://www.samouczekprogramisty.pl/podstawy-zlozonosci-obliczeniowej/
- https://cpp0x.pl/kursy/Teoria-w-Informatyce/424
## Jak to działa
Każda operacja to jedna jednostka czasu.
Definicja Złożoność czasowa to liczba operacji dominujących (podstawowych) wykonanych przez algorytm w czasie jego realizacji, wyrażona jako funkcja rozmiaru danych.
## Typy
### Optymistyczna
Najbardziej korzystny przypadek: wszystkie pętle wykonują się max 1 raz.
### Pesymistyczna
Najmniej korzystny przypadek: wszystkie pętle wykonują się max ilość razy.
### Średnia
Chuj wie tak szczerze.
Gemini wjebał mi to:
> **Średnia (Average Case)** To najbardziej realistyczny scenariusz. Zakładamy, że dane są **losowe** (nie są ułożone specjalnie złośliwie, ani idealnie).
- **Jak to liczyć "na chłopski rozum":** Sumujesz liczbę kroków dla każdego możliwego ułożenia danych i dzielisz przez liczbę tych ułożeń.
- **Przykład:** W sortowaniu szybkim (Quicksort) pesymistycznie masz O(n2) (jak masz pecha), ale średnio (w 99% przypadków) masz O(nlogn). Dlatego używamy go w praktyce, mimo że teoretycznie może być wolny.
## Pojebane notacje
Mamy notacje:
- Duże O - oszacowanie z góry. Pomijamy wszelkiego rodzaju stałe
- Ω (omega) - oszacowanie z dołu.
- Θ (theta) - używamy, gdy algorytm zachowuje się tak samo przy O i omega, czyli oszacowania z góry i z dołu się spotykają.
## Rzędy złożoności obliczeniowej
- O(1) - złożoność stała, niezależna od danych wejściowych.
- O(n) - złożoność liniowa. Czas rozwiązania jest wprost proporcjonalny do wielkości danych wejściowych.
- O(log(n)) - złożoność logarytmiczna. Złożoność zależy od wyniku algorytmu. Rozwiązania, które dzielą problem na mniejsze części przeważnie są zależne od logarytmu wielkości danych wejściowych.
- O(n * log(n)) złożoność logarytmiczno-liniowa. Złożoność zależy od wyniku logarytmu i jest wprost proporcjonalna.
- O($n^2$) - złożoność kwadratowa, czyli specyficzny przypadek złożoności wielomianowej. Przeważnie występuje przy zagnieżdżonych pętlach. Chujowa jest generalnie, bo wymaga dużo obliczeń, dlatego nie zagnieżdżamy pętl. Chyba, że taką na szyi, to możesz ją sobie zagnieździć.
- O($n^x$) - złożoność wielomianowa, czyli jeszcze chujowsza niż kwadratowa.
- O($x^n$) - złożoność wykładnicza. Duża fhuj.
- O(n!) - złożoność typu silnia. Fhujowiej dużo.
## WAŻNE, czyli jak obliczać to gówno
- Sprawdzamy o co pytają, czyli jak rośnie liczba jakiej operacji.
- Podstawiamy sobie jakieś ładne dane do optymistycznego i chujowe do pesymistycznego.
- Możemy sobie rozpisać kolejne iteracje.
- Sprawdzamy ile razy wywołała się ta operacja, która była w pytaniu.
Essa essunia.
# Algorytmy rekurencyjne
Rekurencja polega na wywoływaniu funkcji przez samą siebie ze zmienionym argumentami. Każda funkcja rekurencyjna potrzebuje warunku zakończenia, czyli jakiegoś ifa, który w pewnym momencie na pewno będzie prawdziwy i który przerwie pętle wywołań.
## Przerabianie iteracji na rekurencję
Znajdujemy warunek końca, sprawdzamy go, a potem wywołujemy siebie samą ze zmienionym argumentem. Np.
```
// iteracyjnie
Euklides(a, b) {
while (b != a) { // <-- warunek końca
if (b > a) {
b = b - a // <-- "zmiana argumentu"
} else {
a = a - b // <-- "zmiana argumentu"
}
}
return b
}
// rekurencyjnie
Euklides(a, b) {
if (b == a) { // <-- warunek końca
return b
}
if (b > a) {
return Euklides(a, b - a) // <-- zmiana argumentu
} else {
return Euklides(a - b, b) // <-- zmiana argumentu
}
}
```

View File

@@ -0,0 +1,50 @@
import numpy as np
def letter_to_num(letter):
return ord(letter.upper()) - ord('A')
def num_to_letter(num):
return chr(num + ord('A'))
def cipher(text: str):
k = np.array([[3, 3], [2, 5]])
text_upper = text.upper().replace(' ', '')
if len(text_upper) % 2 != 0:
text_upper += "X"
text_number = [letter_to_num(letter) for letter in text_upper]
text_matrix = np.array(text_number).reshape(-1, 2).T
c = (k @ text_matrix) % 26
cipher_text = ''.join(num_to_letter(num) for num in c.T.flatten())
return cipher_text
def decipher(text: str):
k = np.array([[3, 3], [2, 5]])
k_inv = np.linalg.inv(k)
text_upper = text.upper().replace(' ', '')
if len(text_upper) % 2 != 0:
text_upper += "X"
text_number = [letter_to_num(letter) for letter in text_upper]
text_matrix = np.array(text_number).reshape(-1, 2).T
c = (k_inv @ text_matrix) % 26
cipher_text = ''.join(num_to_letter(num) for num in c.T.flatten())
return cipher_text
if __name__ == "__main__":
test_text = "Test"
cipher = cipher(test_text)
#decipher = decipher(cipher)
print("Text: ", test_text)
print("cipher: ", cipher)

View File

@@ -0,0 +1,3 @@
- 19*69* powstała pierwsze sieć komputerowa. 69 buahahha
- amazon pierwsza księgarnia internetowa
- frontend bakend