算法是计算机科学的核心,它决定了计算机解决问题的能力。本教程将为您介绍一些基础的算法概念和常用算法。

常见算法类型

  • 排序算法:如冒泡排序、选择排序、插入排序、快速排序等。
  • 搜索算法:如线性搜索、二分搜索等。
  • 图算法:如深度优先搜索、广度优先搜索等。

排序算法示例

以下是一个简单的冒泡排序算法的 Python 实现:

def bubble_sort(arr):
    n = len(arr)
    for i in range(n):
        for j in range(0, n-i-1):
            if arr[j] > arr[j+1]:
                arr[j], arr[j+1] = arr[j+1], arr[j]
    return arr

arr = [64, 34, 25, 12, 22, 11, 90]
print("Original array:", arr)
sorted_arr = bubble_sort(arr)
print("Sorted array:", sorted_arr)

图算法示例

以下是一个简单的深度优先搜索算法的 Python 实现:

def dfs(graph, start):
    visited = set()
    stack = [start]

    while stack:
        vertex = stack.pop()
        if vertex not in visited:
            print(vertex, end=" ")
            visited.add(vertex)
            stack.extend(graph[vertex] - visited)

graph = {
    'A': ['B', 'C'],
    'B': ['A', 'D', 'E'],
    'C': ['A', 'F'],
    'D': ['B'],
    'E': ['B', 'F'],
    'F': ['C', 'E']
}

print("Depth First Search:")
dfs(graph, 'A')

扩展阅读

如果您想了解更多关于算法的知识,可以访问我们网站的 算法专题 页面。

算法