作家
登录

删除重复数据的算法

作者: 来源:www.28hudong.com 2013-03-30 03:56:20 阅读 我要评论

在工作中碰到这么一个问题:给定一个已经排序的数组(升序),删除数组中重复的数据,但是只能使用一个数组,这个数组的大小可以变化. 例子: 数组:[1,1,2,2,3,3,4,5,7,10] 输出::[1,2,3,4,5,7,10] 实现(1): var arr =new Array(1,1,2,2,3,3,4,5,7,10); var len = arr.length; for(var i=len-1;i>=1;i--) { if(arr[i-1] == arr[i]) { arr.splice(i,1); } } alert(arr); 实现(2): var arr =new Array(1,1,2,2,3,3,4,5,7,10);var len = arr.length;var k=0;for(var i=1;i<len;i++){ if(arr[k] != arr[i]) { arr[k+1]=arr[i]; k++; } }alert(arr); 但是发现其性能并不是最好的,不知道您是否有更好的算法.(实现语言可以是JavaScript,C#,VB.net,.....)

  推荐阅读

  VB倒计时器和JS当前时间

VBscript做计时器,遇到一个问题,怎么在页面上不断的调用一个VB函数呢.... 例如倒计时,如何让秒数在不刷新的情况下走动... 想了好久,查了好多地方都是用JavaScript做的... 最后才发现了一个,是VBscript帮助上都没有>>>详细阅读


本文标题:删除重复数据的算法

地址:http://www.17bianji.com/kaifa2/JS/31325.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)