# python-DataStructure-algorithm **Repository Path**: smilingwayne/python-data-structure-algorithm ## Basic Information - **Project Name**: python-DataStructure-algorithm - **Description**: 用Python实现一些经典的算法 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-09-16 - **Last Updated**: 2023-02-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # python-DataStructure-algorithm #### 介绍 用Python实现一些经典的算法。想到啥就写啥。 非ACMer非OIer非科班,纯代码爱好者。 #### 使用说明 1. [**Calculator**](./Calculator/): Python实现的复杂字符串计算器 🧮。功能包含: 1. ✅ 递归法支持多层括号嵌套 2. ✅ 指数函数、对数函数计算、基本三角函数计算 3. ✅ 三角函数弧度角度转换/ 反三角函数的计算 4. ✅ 次方运算 5. ✅ 基本的加减乘除与乘方运算 6. ✅ 阶乘计算 7. ❌ 异常值检测(分母、`tan()`、对数恒正... 8. ❌ 可视化`(Tkinter / PyQt5)` :正在进行中 9. ❌ 自定义的函数 2. **Sudoku**: Python 实现的不完备的数独求解算法🔢 1. [backTrackSolver.py](./Sudoku/backTrackSolver.py) 回溯算法求解(支持标准数独、对角线数独、多对角线数独,锯齿数独) 2. [DFSsolver.py](./Sudoku/DFSsolver.py) 用深度优先搜索实现的求解算法,利用位运算进行优化 3. [dancingLinks.py](./Sudoku/dancingLinks.py) 舞蹈链算法实现求解(正在优化🚴🏻‍♀️) 4. [randomize.py](./Sudoku/randomize.py) : Python实现的随机数解数独算法(效率较低,没有多线程) 5. [randomize.c](./Sudoku/randomize.c) : C 语言实现的随机数解数独算法(参考Ice Sudoku)效率较高。 6. [Utils.py](./Sudoku/Utils.py) 一些实用小工具。 3. [**Sort**](./Sort/) : Python实现的20+种奇奇怪怪的排序算法,不定期会加入其他有趣的算法。 1. 已收录:✳️ 2. 选择排序、插入排序、冒泡排序; 3. 二重选择排序、二分插入排序、二重冒泡排序(鸡尾酒排序) 4. 计数排序 5. 基数排序(支持负数) 6. 快速排序、稳定的快速排序、双基准快速排序 7. 桶排序 8. 希尔排序 9. 堆排序(大顶堆、小顶堆) 10. 归并排序、原地归并排序 11. 树状选择排序(胜者树) 12. Tim排序、内省排序(Intro Sort) 13. 奇偶排序 4. [**GenerativeArt**](./Toys/GenerativeArt/):🎨 Python 实现的生成艺术(Generative Arts)小作品 1. [Art4.py](./Toys/GenerativeArt/Art4.py) : Delaunay Triangulation 的画作 需要安装trianguler包,似乎只支持git远程,pip用不了; ![Art4](./Toys/GenerativeArt/artPkgs/DT_Mona_Lisa.jpeg) 1. [Art5.py](./Toys/GenerativeArt/Art5.py) : SLIC 处理的作品,感谢`https://github.com/laixintao/slic-python-implementation`的贡献!可以去Star一下! ![Art5](./GenerativeArt/lenna_M10_K200_loop0.png) 3. [Art6.py](./Toys/GenerativeArt/Art6.py) : 一个简单的递归。 ![Art6](picx/READMEPic1.png) 1. [**Graph**]("./Graph/"): 图论的一些算法 1. Kruskal / Prim / DFS 2. 记忆化搜索 / 剪枝 2. [**Notes**]("./Notes/"): 一些供应链管理的笔记(尚未整理到仓库)