查看: 8913|回复: 6
收起左侧

[讨论] [易语言例程][一切为了速度]]文本数组去重,长度1-8,一百万成员少于三秒,欢迎比较。

[复制链接]
yjwfdc
头像被屏蔽
发表于 2015-3-30 10:54:56 | 显示全部楼层 |阅读模式
本帖最后由 yjwfdc 于 2015-3-30 12:01 编辑

[易语言例程][一切为了速度]]文本数组去重复,文本长度1-8,一百万成员少于三秒。欢迎其它语言比较。
例程和dll都是由易语言编写,内联汇编由网上寻得。
核心算法写成了一个dll文件,如果有比本程序更快的程序,会开源本算法。
压缩包里是dl文件和调用例程原码及编译后的调用例程
去重复dll.zip (300.94 KB, 下载次数: 449)
小v可
发表于 2015-3-30 14:01:23 | 显示全部楼层
本帖最后由 小v可 于 2015-3-30 14:07 编辑

我猜一会肯定会有人喷易语言~~

看了下lz之前的帖子 如果lz想比个个语言的较效率的话 相同的算法比较起来 比较公平吧?
如果单纯的比算法 觉得lz可以参加比赛什么的~~

个人愚见 非专业纯当兴趣的学习易语言貌似没什么不好的~~
专业点的 比如在学校里学计算机系的话 易语言绝对不是你的入门语言 so  学学又不会少块肉~~没什么好喷的~~

评分

参与人数 1人气 +1 收起 理由
yjwfdc + 1 淡定

查看全部评分

yjwfdc
头像被屏蔽
 楼主| 发表于 2015-3-30 14:02:58 | 显示全部楼层
本帖最后由 yjwfdc 于 2015-3-30 16:52 编辑
小v可 发表于 2015-3-30 14:01
我才一会肯定会有人喷易语言~~


正好比比速度。

相同的算法上一贴比过了。

这次比算法以及语言综合速度。
taoyuan237
发表于 2015-3-30 18:48:36 | 显示全部楼层
#include <iostream>
#include <tchar.h>
#include <stdlib.h>
#include <time.h>
#include <Windows.h>
#include <map>
#include <string>
using std::map;
using std::string;

int _tmain(int argc, _TCHAR* argv[])
{
        DWORD dwCurrent = GetTickCount();
        srand((unsigned int)time(NULL));
        map<string,int> maplist;
        string temp;
       
        for (int i=0;i<1000000;i++)
        {
                char maxdata[17]={0};
                char strsize=rand()%15+1;
                for (int j=0;j<strsize;j++)
                {
                        maxdata[j]=(char)rand()+1;
                }
                temp=maxdata;
                maplist.insert(std::pair<string,int>(temp,1));
                temp.clear();
        }
        dwCurrent=GetTickCount()-dwCurrent;
        std::cout<<"time: "<<dwCurrent<<"ms"<<std::endl;
        std::cout<<"MapListNUM: "<<maplist.size()<<std::endl;
        system("pause");
        return 0;
}
//演示程序对应源代码

风格比较乱,不要介意。VS2010编译。
rand随机生成16字节(一个汉字我算2字节)的字符数组添加到map(map不会添加重复的元素),循环100W次
生成+去重时间如图
QQ截图20150330184334.png

TEST.7z

59.23 KB, 下载次数: 94

测试程序

抵达怀念
头像被屏蔽
发表于 2015-3-30 20:09:14 | 显示全部楼层
调试输出(高手的世界不懂
thelord
发表于 2015-4-3 19:19:45 | 显示全部楼层
4楼把生成时间都算进去了?呵呵
不知道楼主的例程有没有把读取文件的时间算进去
yjwfdc
头像被屏蔽
 楼主| 发表于 2015-4-4 11:22:48 | 显示全部楼层
主题不是生成不重复文本。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-11-24 18:31 , Processed in 0.133076 second(s), 20 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表