summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZhongheng Liu on Homelab <z.liu@outlook.com.gr>2025-03-13 10:29:50 +0200
committerZhongheng Liu on Homelab <z.liu@outlook.com.gr>2025-03-13 10:29:50 +0200
commit2384d8d8898d7a2edddec61366b697f9816078cd (patch)
tree4e4071424c31bdd03ba81101470dc692924017d0
parenta55d3e2009a2ee1af818ef107ff00ac1fb5bbc83 (diff)
downloadcs-y13-2384d8d8898d7a2edddec61366b697f9816078cd.tar.gz
cs-y13-2384d8d8898d7a2edddec61366b697f9816078cd.tar.bz2
cs-y13-2384d8d8898d7a2edddec61366b697f9816078cd.zip
feat: 9618-42-mj-2022
-rw-r--r--.vscode/settings.json3
-rw-r--r--9618-42-mj-2022/Question1_J22.py46
-rw-r--r--9618-42-mj-2022/Question2_J22.py45
-rw-r--r--notebooks/theory_ai.ipynb10
4 files changed, 104 insertions, 0 deletions
diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 0000000..027b61a
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,3 @@
+{
+ "remote.autoForwardPortsFallback": 0
+} \ No newline at end of file
diff --git a/9618-42-mj-2022/Question1_J22.py b/9618-42-mj-2022/Question1_J22.py
new file mode 100644
index 0000000..3b8e5c5
--- /dev/null
+++ b/9618-42-mj-2022/Question1_J22.py
@@ -0,0 +1,46 @@
+#1a
+StackData = [None for i in range(10)] # global variable because defined in the main script execution context.
+StackPointer = 0 # global variable because defined in the main script execution context.
+
+#1b
+def OutputAllElements():
+ global StackData
+ global StackPointer
+ for dataItem in StackData:
+ print(dataItem)
+ print(f"Stack pointer: {StackPointer}")
+
+#1c
+def Push(push_item: int):
+ global StackData
+ global StackPointer
+ if StackPointer == len(StackData):
+ return False
+ StackData[StackPointer] = push_item
+ StackPointer += 1
+ return True
+# 1 e i
+def Pop():
+ global StackData
+ global StackPointer
+ if StackPointer == 0:
+ return -1
+ StackPointer -= 1
+ item = StackData[StackPointer]
+ StackData[StackPointer] = None
+ return item
+
+#1d
+for i in range(11):
+ num = int(input(f"Number {i}: "))
+ successful = Push(num)
+ if successful:
+ print("Successfully pushed the item to the stack.")
+ else:
+ print("The stack is full.")
+print(StackData)
+
+# 1 e ii
+Pop()
+Pop()
+print(StackData) \ No newline at end of file
diff --git a/9618-42-mj-2022/Question2_J22.py b/9618-42-mj-2022/Question2_J22.py
new file mode 100644
index 0000000..17db560
--- /dev/null
+++ b/9618-42-mj-2022/Question2_J22.py
@@ -0,0 +1,45 @@
+# 2 a
+import random
+ArrayData = []
+for i in range(10):
+ Row = []
+ for j in range(10):
+ Row.append(random.randint(1, 100))
+ ArrayData.append(Row)
+
+# 2 b i
+ArrayLength = 10
+for x in range(0, ArrayLength): # range() function excludes ArrayLength, so equiv to 0 -> ArrayLength - 1
+ for y in range(0, ArrayLength - 1): # range() function excludes ArrayLength, so equiv to 0 -> ArrayLength - 2
+ for z in range(0, ArrayLength - y - 1):
+ if ArrayData[x][z] > ArrayData[x][z+1]:
+ # swapping
+ tempValue = ArrayData[x][z]
+ ArrayData[x][z] = ArrayData[x][z+1]
+ ArrayData[x][z+1] = tempValue
+
+# 2 b ii
+def OutputAllElements():
+ global ArrayData
+ global ArrayLength
+ for i in range(0, ArrayLength):
+ for j in range(0, ArrayLength):
+ print(ArrayData[i][j], end=" ")
+ print()
+# 2 b iii
+OutputAllElements()
+
+# 2 c i
+def BinarySearch(SearchArray: list, Lower: int, Upper: int, SearchValue: int) -> int:
+ if Upper >= Lower:
+ Mid = (Lower + (Upper - 1)) // 2
+ if SearchArray[0][Mid] == SearchValue:
+ return Mid
+ else:
+ if SearchArray[0][Mid] > SearchValue:
+ return BinarySearch(SearchArray, Lower, Mid - 1, SearchValue)
+ else:
+ return BinarySearch(SearchArray, Mid + 1, Upper, SearchValue)
+ return -1
+
+BinarySearch(ArrayData,) \ No newline at end of file
diff --git a/notebooks/theory_ai.ipynb b/notebooks/theory_ai.ipynb
index 49307e7..68e9428 100644
--- a/notebooks/theory_ai.ipynb
+++ b/notebooks/theory_ai.ipynb
@@ -23,6 +23,16 @@
"- results compared with expected output.\n",
"- model is run with unlabelled data"
]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Deep learning\n",
+ "- machines that think in a way similar to the human brain. They handle huge amounts of data using artificial neural networks.\n",
+ "## Artificial neural networks\n",
+ "- networks of interconnected nodes."
+ ]
}
],
"metadata": {