算法:冒泡排序法(C语言与JavaScript语言)
2019-05-22 22:58
1776 查看
算法之冒泡排序
代码实现一维数组的冒泡排序并进行计时
计时是全代码执行时间,不是算法的。
#include <stdio.h> #include <time.h> void visitArray(int array[]) { int i; for (i = 0; i < 20; i++) { printf("%d ", array[i]); } printf("\n"); } int main() { // 计时准备 clock_t start, stop; start = clock(); int array[20] = { 20, 7, 1, 12, 6, 9, 26, 33, 13, 47 , 88, 17, 1, 12, 6, 9, 26, 63, 72, 47}; printf("排序前的数组:\n"); visitArray(array); int i, j ,temp; for (i = 0; i < 20; i++) { for (j = 19; j > i; j--) { if (array[j] < array[j - 1]) { temp = array[j]; array[j] = array[j - 1]; array[j - 1] = temp; } } } printf("排序后的数组:\n"); visitArray(array); printf("消耗时间:\n"); stop = clock(); double duration = (double)(stop - start) / CLOCKS_PER_SEC; printf("%f\n", duration); // 防止控制台消失 getchar(); return 0; }
C程序2毫秒
function visit (array) { var str = ""; for (var i = 0; i < array.length; i++) { str += array[i] + " "; } console.log(str); } var date1 = new Date(); var start = date1.getTime(); var array = [20, 7, 1, 12, 6, 9, 26, 33, 13, 47 , 88, 17, 1, 12, 6, 9, 26, 63, 72, 47]; console.log("排序前的数组:"); visit(array); var temp; for (var i = 0; i < 20; i++) { for (var j = 19; j > i; j--) { if (array[j] < array[j - 1]) { temp = array[j]; array[j] = array[j - 1]; array[j - 1] = temp; } } } console.log("排序后的数组:"); visit(array); var date2 = new Date(); var stop = date2.getTime(); var duration = stop - start; console.log("消耗时间:" + duration);
JavaScript用了5个毫秒
实际上我这么计时一点也不严谨。
但是,重点是算法嘛,计时不重要,嘿嘿。O(∩_∩)O~~
O(∩_∩)O~~
相关文章推荐
- C语言解决螺旋矩阵算法问题的代码示例_C 语言
- 先到先服务(FCFS)算法C语言,Java语言实现
- 【脚本语言系列】关于JavaScript算法,你需要知道的事
- 常见算法:C语言求最小公倍数和最大公约数三种算法
- C语言(算法)
- NDK-CPP语言-常用算法及综合案例
- javascript 性能分析:算法和流程控制
- javascript数据结构和算法 第二章 (数组) 二
- 第四讲 基于对象的JavaScript语言
- 俺用c语言写的一个天下算法最烂的俄罗斯方块程序
- 汇编语言和c语言的上下文保存比较
- Mickey序列密码算法的c语言实现
- [C语言算法]排序之桶排序
- C语言之实现随机数产生算法
- java语言编写的数组冒泡排序法
- document对象详解 document 文挡对象 - JavaScript脚本语言描述
- base64编码算法与c语言实现
- JavaScript数据结构与算法(五) 数组基础算法
- C语言第三篇:C语言数据类型及各数据类型所占内存字节数
- BASE64 加密算法、原理 各种语言实现算法