当前位置:首页 > 百科知识 > 正文

PC加拿大28经典算法

PC加拿大28经典算法

PC加拿大28经典算法是一种具有重要实践价值的有效算法,它是由加拿大的计算机科学家Peter Corke在1988年整理的28个经典算法的总称,其中包括排序、搜索、图算法等。

排序算法:

1、冒泡排序:冒泡排序是一种简单的排序算法,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。

2、插入排序:插入排序是一种最简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。

3、选择排序:选择排序是一种简单直观的排序算法,它的工作原理是首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。

搜索算法:

1、顺序搜索:顺序搜索是一种最简单的搜索算法,它是从数据集中的第一个元素开始,顺序扫描每一个元素,直到找到所要查找的元素为止。

2、二分搜索:二分搜索是一种在有序数组中查找某一特定元素的搜索算法,它的工作原理是每次都通过跟区间的中间元素对比,将待搜索的区间缩小为之前的一半,直到找到要查找的元素,或者区间被缩小为0。

3、广度优先搜索:广度优先搜索是一种图形搜索算法,它的工作原理是以图中某一节点为出发点,逐层地搜索它的邻接节点,直到所有和出发点有距离为k的节点都被搜索到。

图算法:

1、最短路径算法:最短路径算法是一种图算法,它的工作原理是从一个节点出发,求出从该节点到另一个节点的最短路径,即所走过的节点数目最少。

2、最小生成树算法:最小生成树算法是一种图算法,它的工作原理是在无向图中找到一个极小生成树,它包含图中全部顶点,且边的权值之和最小。

3、拓扑排序算法:拓扑排序算法是一种图算法,它的工作原理是给定一个有向无环图(即DAG),求出一个线性序列,使得该序列中的任意两项都满足“若前者出现在后者之前,则在图中必有一条从前者指向后者的有向边”这一条件