# 程式 - 測驗
Mask 切法(Gateway & Mask)
Class A,B,C,D,E
RESTful & SOAP
前端(SPA, SSR, CSR, MPA)
DOM 觀念
Javascript 程式熟悉度(es5-es11)
DNS的設定及使用 + 憑證
進階Container (Docker Docker Swarm 使用)
Nginx 基本設定
網路安全部分OWASP、網路攻擊的經驗(CVE database, 資料庫加密, GDPR)
應用技術(OAuth2.0)
Devops 概念與導入
Socket
Database 效能調整、監控
Mysql Connection Pool vs Postgresql Connection Pool
系統設計 (時間、語系推播、統計資料的分類及資料庫用法)
Data Structure (Linked list, queue, stack, hash, quick sort, merge sort, heap sort, hash search)
OS (Thread, deadlock, race condition, context switch, non-blocking I/O)
Network (TCP, three-way handshake, SSL, HTTP methods, OSI Model)
Security (Symmetric and asymmetric encryption, MD5)
Graph、Tree
DFS、BFS
# 議題
ChatGPT(談論
## 趨勢科技
* 職務說明:研替
* 面試題目:
* C/C++ 考題
```
1. 搜尋 List 的時間複雜度 (10%)
搜尋 Binary Tree 的時間複雜度
搜尋 Hash Table 的時間複雜度
```
```
2. 一段程式要你判斷 output value。 (15%)
Class A {
A(){print();}
virtual print(){cout << “in A”<<endl;}
};
Class B: public A{
B(){print();}
virtual print(){cout << “in B”<<endl;}
};
void main(void)
{
B b ;
}
請問輸出為何 (選擇題)
```
```
3. 給一段程式碼裡面包含一個 function(string *path) 此 function 的目的為
將 Path 字串最尾端的”\\”刪除,然後問此段程式碼有何問題。(25%)
```
```
4. Link List 反轉, 不能使用任何額外記憶體 (25%)
```
```
5. 寫一個函數, int findPosition (Node *root, int value),root 為一個
二元搜尋樹, value 為 Node 的鍵值,這函數要回傳 value 在二元搜尋樹的中序追
蹤為第幾個。
```
* QA 考題
```
1. 有個人每年牙齒檢查時,都會發現自己有長蛀牙的牙洞,有一年檢查卻發現突然
沒有任何牙洞了,但下一年卻發現一個超大的牙洞請問可能的原因為何 (選擇題)
```
```
2. 網路 10.xxx.xxx.xxx/23, Gateway IP address 為 10.xxx.xxx.254,
問你以下哪些IP的封包會經過Gateway?
```
```
3. 如果要你測試捷運的驗票機, 你會如何測試?
```
```
4. 利用 Remote Desktop 或 SSH 連接到遠端主機A, 結果遠端主機A卻連不上另
一台 Server B 的網頁, 請問你如何找到連不上那一台Server B網頁的原因?
```
* 流程:N
* 出處:[趨勢科技筆試和考題](https://www.ptt.cc/bbs/NCTU_CS_EDA/M.1290765031.A.4B8.html)
# 觀念
## OSI模型
### 第7層 應用層
應用層(Application Layer)提供為應用軟體而設的埠,以設定與另一應用軟體之間的通訊。例如: HTTP,HTTPS,FTP,TELNET,SSH,SMTP,POP3等。
### 第6層 表達層
表達層(Presentation Layer)把資料轉換為能與接收者的系統格式相容並適合傳輸的格式。
### 第5層 會議層
會議層(Session Layer)負責在資料傳輸中設定和維護電腦網路中兩台電腦之間的通訊連接。
### 第4層 傳輸層
傳輸層(Transport Layer)把傳輸表頭(TH)加至資料以形成資料包。傳輸表頭包含了所使用的協定等傳送資訊。例如:傳輸控制協定(TCP)等。
### 第3層 網路層
網路層(Network Layer)決定資料的路徑選擇和轉寄,將網路表頭(NH)加至資料包,以形成封包。網路表頭包含了網路資料。例如:網際網路協定(IP)等。
### 第2層 資料連結層
資料連結層(Data Link Layer)負責網路尋址、錯誤偵測和改錯。當表頭和表尾被加至資料包時,會形成影格。資料連結串列頭(DLH)是包含了實體位址和錯誤偵測及改錯的方法。資料連結串列尾(DLT)是一串指示資料包末端的字串。例如乙太網、無線區域網路(Wi-Fi)和通用分組無線服務(GPRS)等。
分為兩個子層:邏輯鏈路控制(logical link control,LLC)子層和媒介存取控制(media access control,MAC)子層。
### 第1層 實體層
實體層(Physical Layer)在局部區域網路上傳送資料框(data frame),它負責管理電腦通訊裝置和網路媒體之間的互通。包括了針腳、電壓、線纜規範、集線器、中繼器、網卡、主機介面卡等。
Coding:
recursive:
大公因數 (GCD)、費波納契數列 (Fibonacci Sequence)、河內塔 (Hanoi Tower)、N 個字元的排列組合、Merge Sort
DP
322