请解释什么是算法，并提供几个基本的算法示例。
算法是解决问题或执行特定任务的一系列有序步骤或指令。这些步骤可以用计算机程序来实现。以下是几个基本的算法示例：

1. 插入排序算法：对一组无序数字进行排序，将每个数字插入到已排序的数字列表中。
2. 二分查找算法：在一个已排序的列表中查找一个特定的元素，通过不断将列表一分为二来缩小搜索范围。
3. 汉诺塔算法：将三个柱子上的不同大小的圆盘，从一个柱子转移到另一个柱子上，规定每次只能移动一个圆盘，并且大圆盘不能放在小圆盘上面。
4. Dijkstra算法：在带权重的图中，找到单个起点到所有其他顶点的最短路径。