Quicksort算法
![d9f55e505330a4ed0d847bf08b35ae63f7cec9f2](https://i-blog.csdnimg.cn/blog_migrate/af28a9a93e492afcde87b6078957c35c.png)
快速排序(Quicksort)是基于“分治法”的高效排序算法。随机选择划分元素是避免最坏情况runtime好策略。
Bogo排序
![2c7f29a64031c469f17996156e886cea8a24c513](https://i-blog.csdnimg.cn/blog_migrate/000e6c9614b8009ceaf6c341c68b6384.png)
Bogo排序(Bogo sort)也称为愚蠢排序,是一种简单但效率非常低的排序算法。这个排序算法基于可能性,其原理等同将一堆卡片抛起,落在桌上后检查卡片是否已整齐排列好,若非就再抛一次,直到正确排好序的序列出现为止。
公开密匙加密
![a2726c2742360264d825b0563aaccf562a02582f](https://i-blog.csdnimg.cn/blog_migrate/681c9757a1fb86ed85871b9ff9140098.png)
公开密匙加密(Public-key cryptography)可以用于(至少)两个目的:一个人的公开密匙可以用来发送加密的消息给密钥的所有者。这个人可以使用他的私有密匙来创建数字签名,从而显示消息的真实性。
二分搜素算法
![f85257bf61d039d3d46fa3f4c7f4c70c04997eab](https://i-blog.csdnimg.cn/blog_migrate/a73314ba8216866be01d312048727fa5.png)
二分搜素算法(Binary search)是一种用于在有序数组中查找某个值的位置的快速搜索算法。例如人们在“猜数字”时,可以通过反复询问“大于或小于x?”来找到。这种搜索算法每一次比较都使搜索范围缩小一半。
归并排序
![a47e6bebfc3c7686979763d1f655cfd3b0cc605f](https://i-blog.csdnimg.cn/blog_migrate/a883e13e767b048ff2921c40979583f7.png)
归并排序(Merge sort)是基于“分治法”的递归排序算法。
AVL tree
AVL树(AVL tree)是一种保证项目快速查找,插入和删除的数据结构。它是二叉搜索树(Binary Search Tree)的一种自平衡变体。
graph scan算法
![e286083fcef816f67572dacd1ab606201e9b918e](https://i-blog.csdnimg.cn/blog_migrate/e46f9ffea9983e47f5199cc485892365.png)
graph scan算法遍历图中所有可到达的节点。它的行为可以通过插入不同的数据结构来改变:使用无序集合导致随机搜索,使用堆栈产生深度优先搜索,使用队列产生广度优先搜索。
Fleury算法
![501d5d6e000d8aaf4461cf9e1879b4d8e73af6a0](https://i-blog.csdnimg.cn/blog_migrate/bbcdfa4ef5a89407b39a0ebfdfa4b487.png)
Fleury算法,这是一种在图中求解欧拉路径的优雅方法——一次只通过每条边一次的路径。
注:IDEA是SándorP. Fekete,Sebastian Morr和Sebastian Stiller汇编的一些算法说明。它们最初是为不伦瑞克工业大学Sándor算法和数据结构讲座而创建,作者发布它们,希望它们能够用于各种背景的教学和学习。