C++ 算法是编程中非常重要的一部分,它涉及到数据结构和算法的应用。以下是一些常用的 C++ 算法及其应用场景。
常见算法
- 排序算法:冒泡排序、选择排序、插入排序、快速排序、归并排序等。
- 搜索算法:线性搜索、二分搜索等。
- 动态规划:解决最优化问题的方法,如背包问题、最长公共子序列等。
- 图算法:深度优先搜索、广度优先搜索、最小生成树、最短路径等。
示例代码
以下是一个使用快速排序算法的示例:
#include <iostream>
#include <vector>
void quickSort(std::vector<int>& arr, int left, int right) {
if (left >= right) return;
int i = left, j = right;
int pivot = arr[(left + right) / 2];
while (i <= j) {
while (arr[i] < pivot) i++;
while (arr[j] > pivot) j--;
if (i <= j) {
std::swap(arr[i], arr[j]);
i++;
j--;
}
}
quickSort(arr, left, j);
quickSort(arr, i, right);
}
int main() {
std::vector<int> arr = {3, 6, 8, 10, 1, 2, 1};
quickSort(arr, 0, arr.size() - 1);
for (int num : arr) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
扩展阅读
更多关于 C++ 算法的教程,请访问本站算法教程。
图片
排序算法