2022年10月10日 星期一

MD5 筆記

MD5 Intro MD5 訊息摘要演算法(英語:MD5 Message-Digest Algorithm),一種被廣泛使用的密碼雜湊函式,可以產生出一個128位元(16個字元(BYTES))的雜湊值(hash value),用於確保資訊傳輸完整一致。(節自wiki) 簡易 MD5 工具 : md5sum 基本上 Unix, Linux 的作業系統都有預設 md5sum ...

2022年10月9日 星期日

讀取 Linux file info (stat)

讀取 Linux 的檔案資訊 Linux 的檔案有很多資訊,即使只用到檔案大小也是很方便。 stat struct stat stat 的資料結構 #include <sys/stat.h> struct stat { dev_t st_dev; /* ID of device containing...

2022年9月25日 星期日

vscode 刪除空格 (Remove trailing spaces)

使用 vscode 自動刪除空格的原因 當你上 code 時,有 reviewer 看你的程式碼時,通常會用 meld 等軟體 review。當你的程式碼加了多餘的空格時,都會被這些程式碼 highlight,使得 reviewer 在查看你的程式碼時有一定的不便。 vscode 刪除空格 手動刪除空格 (Remove trailing spaces manually) ...

Leet code

最近一直寫 Leetcode,部落格也就荒廢許久,想說突破 200 題來分享一下心得。 Distance question Leetcode 上有很多問題是關於距離,這裡紀錄下一些有用的數學概念。 平均值 (mean) 平均值的歐幾里得距離最短 (4*4 + 4*4 < 1*1 + 7*7) 但相乘值最大 (4*4 > 1*7) 中位數...

2022年1月3日 星期一

Topological Ordering 介紹

Directed Acyclic Graph (DAG) 介紹 不同於 Tree 的無方向、無環,DAG 則是有方向、無環。DAG 特性是不斷地前進,有時分流、有時合流,日常常見的 DAG 為族譜、水流以及課程擋修規則。 實作 Topological Ordering 拿課程擋修規則為例,有必須先修的課程及後修的課程,將其完整排列出來視為 Topological...

Popular Posts