網站頁面導覽
歡迎來到 ShiYu’s Blog !
導覽
點擊前往 自我介紹 About me
點擊前往 第一篇文章 Hello, World.
點擊前往 時間複雜度&空間複雜度 Big O
點擊前往 職業達人訪談大啟示 輔導課期末報告
點擊前往 基礎資料結構 Data Structures (Python)
點擊前往 排序演算法 Sort Algorithm (C++)
點擊前往 南大附中 資訊研究社 創社計畫
點擊前往 資訊學科能力競賽 心得
點擊前往 C++ STL 內建基礎資料結構
點擊前往 C++ 進階資料結構實作
點擊前往 AI 人工智慧相關理論知識筆記彙整(持續更新)
點擊前往 訓練神經網路計算過程
(撰寫中 待發布…) 光波二象性 狹縫干涉與繞射實驗 物理期末報告
(撰寫中 待發布…) 量子力學 學習筆記 & 研究報告
(撰寫中 待發布…) 量子運算 IBM Qiskit
點擊前往 學習資源連結彙整頁面
歡迎自由探索整個網頁!
網頁架構
本網頁組成架構
主頁 Home
網頁封面
側邊資訊欄
文章推薦
...
AI 人工智慧相關理論知識筆記彙整(持續更新)
人工智慧 Artificial Intelligent
圖靈測試:測試機器是否能表現出與人等價或是無法區分的智慧
赫布理論(Hebbian Theory):解釋了在學習的過程中腦中的神經元所發生的變化
賽局理論:研究遊戲中個體與團體如何做決策與如何找到最佳決策的一門學科
納許均衡:囚徒困境,個人最佳選擇與團體最佳選擇衝突
機器翻譯:Zero Shot 語言之間的連結
通用人工智慧:整合各能力
機器學習 Machine Learning
機器能從經驗或資料中學習,而後在某個問題或任務上衡量標準能有所提升
三大要素
模型
算法
策略
學習類型
學習類型
Learning type
訓練資料
目標
舉例
監督式學習
Supervised Learning
資料、標籤
學習資料與標籤之間的關係
線性回歸(Linear Regression)
非監督式學習
Unsupervised Learning
資料
學習資料之間的隱藏結構
分群(Clustering)
強化式學習
Reinforcement Learning
來自一系列與環境互動的行動與獎勵回饋(reward ...
南附資研社 - 社團經營之路
創社歷程、成果、心得與反思
撰寫中 …
點擊回到導覽頁面
C++ 進階資料結構實作
撰寫中,敬請期待
預計內容
並查集 Disjoint Set
線段樹 Segment Tree
樹狀數組 BIT
稀疏表 Sparse Table
樹堆 Treap
__gnu_pbds
可先閱讀這篇 C++ STL 內建基礎資料結構
點擊回到導覽頁面
南九校資訊社 x 成大資工 x SCIST 2024 聯合寒訓 - 資得其樂 籌辦心得
寒訓詳細資訊
引言
在 2023/11/25 這次的寒訓總召 碗蒸 私訊我問說要不要一起辦寒訓,但其實我們南附資研在 2023/11/13 幹部線上開會時就有討論到說寒假要辦營隊,本來沒想說要辦那麼大規模的寒訓,那時的規劃主要是開放給校內的所有學生和老師,大概會舉辦講座提供給校內對資訊領域有興趣的人,且主題訂為資訊領域的多元課程。
後來思考過後決定接下本次寒訓副召,一開始的召群有南女的總召 碗蒸、一中的副召 KCC 還有我,加上 Fishhh、Eason 和 Curious 這三位 SCIST S4 的總召們協助,還有小白的加入也讓我們日後籌備更順利。
籌備階段
我們是先開了線上會議,確認好活動目的與受眾,排好 Deadline 後才開始籌備,一開始是要先招募工作人員,因為有茶碗蒸這個 SCIST 文書在,所以各種表單很快就做好了,而且他也有之前辦茶會迎新的經驗,所以初期還挺順利的,也在一開始就把各校的邀請訊息發出去了,最後是找到了 9 間學校聯合主辦,而 SCIST 則是掛協辦,提供我們講師助教等課程上的資源,我們也開始著手撰寫計劃書、排時間表、預估經費、詢問場地租借…等。在計劃 ...
C++ STL 內建基礎資料結構
Intro
在去年 2022 的 12 月,我寫了一篇 基礎資料結構 Data Structures (Python) 簡單的介紹概念並以 python 實做了一些基礎資料結構,而自從我使用 C++ 後,接觸到了 C++ STL 內建的資料結構,於是我在今年 2023 年的 12 月寫了這篇文章,彙整了許多資料結構的概念與用法,文章內容較多,所有內容皆為收集的資料擷取並經過修改整理而成,文章內容若有任何錯誤或需要補充的地方都歡迎使用右側聊天室傳送訊息給我,我將會儘速修改,謝謝
先備知識
標準模板庫(Standard Template Library),簡稱 STL 為 C++ 內建的函式庫
為了應對各種資料型態,因此採用 模板 template 來實作,分為六大部分:
容器 Containers
演算法 Algotithm
迭代器 Iterator
適配器 Adaptor
仿函數 Function object
空間配置器 allocator
本篇文章內容只會出現前四大部分
符號解釋
對於本篇文章中各種符號的解釋
C:某種容器(container)
T:某種資料型態(type ...
訓練神經網路計算過程
這是一個具有一層隱藏層的神經網路:
假設
輸入層有 3 個節點,輸入 X 中有 3 筆數據,其標籤為 Y:
X=[1202−32−1−13],Y=[12−3] X =
\begin{bmatrix}
1 & 2 & 0 \\
2 & -3 & 2 \\
-1 & -1 & 3 \\
\end{bmatrix},
Y =
\begin{bmatrix}
1 \\
2 \\
-3 \\
\end{bmatrix}
X=12−12−3−1023,Y=12−3
W1=[−10−111−1] W_1 =
\begin{bmatrix}
-1 & 0 \\
-1 & 1 \\
1 &am ...
資訊學科能力競賽 參賽心得
競賽資訊
名稱:112 學年度學科能力競賽 複賽 資訊科
賽區:國教署負責區第四區(台南)
時間:2023/11/2
地點:台南女中
比賽人數:50 人(資訊科)
獲獎人數:1 ~ 5 名進全國賽 再大約取前三分之一的人獲得佳作
當天詳細時程:
前言
這是我第一次比資訊學科能力競賽 高一時不知道在幹嘛 那時不太關注資訊比賽
南大附中好像也沒什麼人比過資訊能競 所以我跟 @Yudong 不用校內初選就直接進複賽了
南區去年只有選 3 名進全國賽 今年因為去年的南一中有人全國賽一等二等獎 所以新增了 2 個 總共有 5 個名額 賽前猜測沒意外應該都是南一中的
我們第一次比賽就遇到主辦方各種出錯 這個留到文章最後再說
此篇文章就是寫我參加此競賽的過程、解題程式碼、心得、和檢討
如果你也是資訊選手或打競程的 那這篇其實可以滑掉不用看了
對你來說可能是一篇廢文 沒什麼參考價值
上午場
報到抽籤後 發現只有我們學校沒有領隊…
到了我們學校的座位 被排在最後一排
我跟 Yudong 在猜這座位配置是不是依照學校的得獎次數排的哈哈
我在活動中心其實滿緊張的 雖然前幾個禮拜也有參加比賽:Code ...
從 0 開始的社團 - 南大附中資訊研究社
創社計畫
點擊回到導覽頁面
排序演算法 Sort Algorithm (C++)
現今社會,資料量不斷地增加,因此排序演算法的重要性日益提升,從大數據排序到網路搜尋引擎排序,排序演算法在我們日常生活中扮演了重要的角色。
本文將介紹10種常見的排序演算法,來和我一起學習掌握排序演算法的原理及實作過程吧!
本文架構
線性排序演算法種類
氣泡排序 Bubble Sort
選擇排序 Selection Sort
插入排序 Insertion Sort
快速排序 Quick Sort
合併排序 Merge Sort
堆排序 Heap Sort
希爾排序 Shell Sort
計數排序 Counting Sort
桶排序 Bucket Sort
基數排序 Radix Sort
每個排序演算法的內容
排序介紹
動畫演示
實作步驟
C++程式碼
注意事項
時間複雜度
總結
測試模板
下文介紹的 10 種排序演算法都會附上寫好的函式 這裡提供測試模版 在區域中加上各種排序演算法函式即可運作 可 EOF 輸入
123456789101112131415161718192021222324252627#include <bits/stdc++.h>using nam ...
基礎資料結構 Data Structures (Python)
資料結構是電腦中儲存、組織資料的方式
選擇好的資料結構是提升演算法效率的關鍵
陣列 Array
陣列是一種 線性串列
由第 0 項開始
儲存相同類型資料
使用一段連續的記憶體空間來存放
須事先宣告固定記憶體空間 容易造成浪費
讀取與修改串列的時間快速
刪除或插入資料需移動大量資料
一維陣列:
二維陣列:平面
三維陣列:立方體
以Python程式碼表示
1234567891011121314#Arrayimport numpy as np#一維陣列a = np.array([1,2,3])print(a[2]) #3#二維陣列b = np.array([[1,2,3],[4,5,6]])print(b[0][1]) #2#三維陣列c = np.array([[[1,2,3],[4,5,6],[7,8,9]]])print(c[0][1][2]) #6
使用NumPy套件來運用Array資料型態
鏈結串列 Linked list
記憶體位置不連續 隨機儲存
不需事先定義連續記憶體空間
利用每個node中的pointer指向下一個node
以NULL來代表Linked lis ...
職業達人訪談大啟示 輔導課期末報告
訪談日期:2022/12/10
訪談地點:竹崎高中
訪談對象:黃皇賓 老師
畢業大學校系:中正大學
最高學歷:中正電機所
曾經的職業:AI 軟體工程師
軟體工程師種類與其相關技術心智圖
此心智圖利用Diagrams.net軟體製作,為個人自製,若相關技術有錯誤部分請見諒,使用此圖請附註來源:ShiYu’s Blog
軟體工程師工作內容與關係
工作年資:5年
工作單位:車輛研究測試中心
為中華民國經濟部所屬之非營利研究機構,成立於1990年10月。其宗旨為「提供具國際公信力之車輛及零組件檢測與認證服務,並從事相關之技術研發與產品品質改善發展業務,以達成保障行車安全,維護消費者權益與協助輔導車輛及零組件工業升級發展」。
網站:https://www.artc.org.tw/
實際工作內容&工作目標
主要工作項目是為無人自駕車 開發辨識系統 利用AI辨識路況 以下為開發的相關技術:
目標:達成公司要求
無人自駕車網頁連結:https://www.artc.org.tw/tw/research/detail/39
興趣何倫碼
研究型 I
實作型 R
重要學科
數 ...
時間複雜度 & 空間複雜度
當我們需要用比較客觀的方式去評斷一個演算法的效能好不好的時候 我們就會討論它的「時間複雜度」與「空間複雜度」
時間複雜度
計算一支程式丟到電腦上需要執行多久
因為考量不同電腦計算能力的問題
所以速度不是以秒計算
正確來說 時間複雜度會用 演算法執行需要幾個指令 來計算
以 Big O 表示
只會紀錄 最高次方項 並忽略其所有的係數
以下為常見的時間複雜度:
O(1):常數時間
n 不管輸入多大 都不會影響程式的執行時間
123void PrintINT(int n) { printf("%d\n",n);}
O(n):線性時間
隨輸入 n 的大小而影響 for迴圈執行次數
1234567int Sum_1_to(int n){ int i,sum=0; for(i=1;i<=n;i++){ sum += i; } return sum;}
O(n^2):平方時間
巢狀迴圈
執行 n * n 次 最高次方項為 n的2次方
123456789void Mult_tab ...