学习javascript,实现插入排序
2011-07-29 18:18
141 查看
插入排序
插入排序是这样实现的:首先新建一个空列表,用于保存已排序的有序数列(我们称之为"有序列表")。
从原数列中取出一个数,将其插入"有序列表"中,使其仍旧保持有序状态。
重复2号步骤,直至原数列为空。
插入排序的平均时间复杂度为平方级的,效率不高,但是容易实现。它借助了"逐步扩大成果"的思想,使有序列表的长度逐渐增加,直至其长度等于原列表的长度。
(引自百度百科)
javascript代码
<script type="text/javascript"> var org = [5, 4, 3, 2, 1, 6, 7, 9, 8, 10]; var tempArr = new Array(); for (var i = 0; i < org.length; i++) { if (i == 0) { tempArr[0] = org[0]; //把第一个元素放到新序列 } else { for (var j = 0; j < tempArr.length; j++) { if (org[i] > tempArr[j]) { //如果是新序列的最后一个元素,则插入 if (j == tempArr.length - 1) { tempArr[j + 1] = org[i]; break; } else {//如果不是最后一个元素,则往后移动 continue; } } else { //移动新序列、然后插入 for (var k = tempArr.length - 1; k >= j; k--) { tempArr[k + 1] = tempArr[k]; } tempArr[j] = org[i]; break; } } } } alert(tempArr); </script>
相关文章推荐
- 学习javascript,实现插入排序实现代码
- javascript学习(二) 时间效果实现
- android web view的学习 2 通过WebChomeClient 实现进度条和title,通过WebViewClient 来进行url的拦截,和javascript的交互
- scala学习(二)----------------插入排序实现
- [JavaScript学习]用面向对象方法实现拖拽效果
- ajax学习笔记二:javascript实现命名空间(ajax封装类的例子)
- Javascript学习之H5自动重连技术实现方法详解
- 黑马程序员_学习日记73_725ASP.NET(禁用Cookie、ASP.NET中的重要对象、JavaScript实现AJAX、两种Json格式的序列化方法、JQuery中实现ajax的五种方法)
- 【javascript】学习总结——动态时钟的实现代码
- JavaScript学习摘记(实现标题左右滚动效果)
- 用JavaScript实现十大经典排序算法--插入排序
- [Java学习] Java插入排序实现
- Javascript实现三种排序:冒泡排序、选择排序、插入排序
- javascript 学习笔记之面向对象编程(一):类的实现
- 我的学习笔记004--javascript实现旋转导航菜单
- JavaScript学习笔记——简单无缝循环滚动展示图片的实现
- JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
- jQuery学习之路(7)- 用原生JavaScript实现jQuery的某些简单功能
- Javascript中从学习bind到实现bind的过程