MathAlgo2 是一個全面的 Python 數學演算法工具包,專注於提供多樣化的數學計算與演算法實現。本工具包適合研究人員、學生以及需要進行數學計算的開發者使用。
Project description
MathAlgo2 數學演算法工具包
專案簡介
MathAlgo2 是一個全面的 Python 數學演算法與資料處理工具包,提供多樣化的演算法實現、視覺化功能、檔案處理工具以及數據分析功能。本工具包適合研究人員、數據分析師以及需要進行演算法分析和資料處理的開發者使用。
版本資訊
- 當前版本:0.4.0
- 發布日期:2024-12-28
- 更新日誌:
- 0.4.0 (2024-12-28)
- 基礎數學運算功能(矩陣運算、向量計算、複數運算)
- 進階演算法功能(最佳化演算法、數值分析、統計分析工具)
- 實用工具(資料視覺化、效能分析、錯誤處理機制)
- 0.4.0 (2024-12-28)
核心功能
數學運算
- 微積分計算(定積分、極限、泰勒級數)
- 矩陣運算(加減乘、轉置、行列式)
- 向量空間運算
- 數學函數視覺化
資料結構
- 二元樹(插入、搜尋、序列化)
- 堆疊(LIFO)
- 佇列(FIFO)
- 鏈結串列
- 圖結構(含視覺化)
搜尋演算法
- 二分搜尋
- 線性搜尋
- 視覺化搜尋過程
- 效能分析工具
圖論演算法
- 深度優先搜尋 (DFS)
- 廣度優先搜尋 (BFS)
- Dijkstra 最短路徑
- 視覺化圖形演算法
加密與編碼
- 基礎編碼(ASCII、Base64、摩斯密碼)
- 古典密碼(凱薩密碼、柵欄密碼)
- 現代加密(RSA、AES、DES)
- 檔案加密功能
檔案處理工具
- 多格式檔案讀寫
- 檔案壓縮與解壓縮
- 檔案加密與解密
- 圖片處理功能
- 檔案備份管理
日誌系統
- 多級別日誌記錄
- 日誌檔案輪轉
- 自定義日誌格式
- 性能監控
使用範例
數學運算
from mathalgo2.BaseMath import Calculus
# 創建計算器實例
calc = Calculus("x**2 + 2*x + 1")
# 計算定積分
result = calc.definite_integral(0, 1)
print(f"定積分結果: {result}")
# 繪製函數圖形
calc.plot(-5, 5)
資料結構
from mathalgo2.Structure import Tree, Stack
# 創建二元樹
tree = Tree()
tree.insert(5)
tree.insert(3)
tree.insert(7)
# 使用堆疊
stack = Stack(max_size=10)
stack.push(1)
stack.push(2)
print(stack.pop()) # 輸出: 2
加密解密
from mathalgo2.Code import ModernCipher
# AES 加密
cipher = ModernCipher()
encrypted, key = cipher.aes_encrypt("Hello, World!")
decrypted = cipher.aes_decrypt(encrypted, key)
環境需求
- Python 3.7+
- NumPy >= 1.19.0
- SciPy >= 1.6.0
- Pandas >= 1.2.0
- Matplotlib >= 3.3.0
- Seaborn >= 0.11.0
- SymPy >= 1.8
- Cryptography >= 3.4.0
- Pillow >= 8.0.0
- OpenCV >= 4.5.0
安裝
基本安裝
pip install mathalgo2
開發者安裝
pip install mathalgo2[dev]
文件開發安裝
pip install mathalgo2[docs]
文件
完整文件請參考 專案文件
參與貢獻
我們歡迎各種形式的貢獻:
- Fork 本專案
- 建立特性分支 (
git checkout -b feature/新功能
) - 提交變更 (
git commit -m '新增某功能'
) - 推送分支 (
git push origin feature/新功能
) - 提交 Pull Request
作者
- Donseking - GitHub
- Email: 0717albert@gmail.com
授權條款
本專案採用 MIT 授權條款 - 詳見 LICENSE 檔案
問題回報
如發現任何問題,請至 Issues 頁面回報