实现O(n³)时间复杂度的代码,用C语言
时间: 2024-09-10 10:05:01 浏览: 34
js代码-介绍算法时间复杂度
在C语言中,实现一个时间复杂度为O(n³)的操作通常涉及到三层循环嵌套,比如经典的三数之积问题或者矩阵乘法。这里是一个简单的示例,展示如何计算一个数组中所有元素两两相乘的结果:
```c
#include <stdio.h>
void cubic_time(int arr[], int n) {
for (int i = 0; i < n; i++) { // 第一重循环
for (int j = 0; j < n; j++) { // 第二重循环
for (int k = 0; k < n; k++) { // 第三重循环
int product = arr[i] * arr[j] * arr[k];
printf("%d * %d * %d = %d\n", arr[i], arr[j], arr[k], product);
}
}
}
}
int main() {
int array[] = {1, 2, 3, 4, 5};
int size = sizeof(array) / sizeof(array[0]);
cubic_time(array, size);
return 0;
}
```
这个函数会遍历数组的所有元素对,并计算它们的乘积,导致时间复杂度是n * n * n,也就是O(n³)。
阅读全文