开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 2457|回复: 14
收起左侧

[闲聊] 突然发现操作xx好像C++最好用

[复制链接]
结帖率:100% (4/4)
发表于 2020-2-23 20:17:03 | 显示全部楼层 |阅读模式   湖北省武汉市
写一个排序去重的,emmm1kw的xx量

python跑了一个上午,易语言跑了一个小时,C++STL跑了一秒钟?

这挺有趣...
结帖率:100% (4/4)
 楼主| 发表于 2020-2-23 20:36:43 | 显示全部楼层   湖北省武汉市
a617273503 发表于 2020-2-23 20:27
你这样 会不会 被拖出去打啊 太夸张了

听说有人不信?代码贴上来:
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main()
  4. {
  5.         set<string> ip;
  6.         set<string>::iterator it;
  7.         string now;
  8.         freopen("ipa","r",stdin);
  9.         freopen("ipa.txt","w",stdout);
  10.         while(1)
  11.         {
  12.                 cin>>now;
  13.                 if(now=="EOF")
  14.                         break;
  15.                 ip.insert(now);
  16.         }
  17.         for(it=ip.begin();it!=ip.end();it++)
  18.         {
  19.                 cout<<*it<<endl;
  20.         }
  21.         return 0;
  22. }
复制代码


评分

参与人数 1好评 +1 收起 理由
1051496412 + 1 感谢分享,很给力!~

查看全部评分

回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
发表于 2020-2-25 13:10:44 | 显示全部楼层   广东省清远市
算法的实现不一样,放在一起讨论无意义
回复 支持 反对

使用道具 举报

结帖率:100% (4/4)
 楼主| 发表于 2020-2-24 07:49:19 | 显示全部楼层   湖北省武汉市
福仔 发表于 2020-2-23 21:45
读入一个小时?   我没看错吧.....
就算使用 读入文件() 也不会那么慢啊....
用易语言的打开文件, 读入 ...

我说的是 一个小时跑下来是读入文件,到文本,分割文本,去重下来的时间....
回复 支持 反对

使用道具 举报

结帖率:100% (4/4)

签到天数: 28 天

发表于 2020-2-24 07:30:37 | 显示全部楼层   四川省宜宾市
用python可能一天也跑不完
回复 支持 反对

使用道具 举报

结帖率:82% (14/17)
发表于 2020-2-23 22:25:35 | 显示全部楼层   安徽省滁州市
huzpsb 发表于 2020-2-23 20:47
您可以运行试一试,
又:我ssd硬盘,C++没有标准输入输出,更没有窗体

你说得对,不跟你争论,信不信由你
回复 支持 反对

使用道具 举报

发表于 2020-2-23 22:16:57 | 显示全部楼层   广东省中山市
但是内存占用大
回复 支持 反对

使用道具 举报

结帖率:100% (8/8)

签到天数: 26 天

发表于 2020-2-23 21:45:18 | 显示全部楼层   广西壮族自治区崇左市
huzpsb 发表于 2020-2-23 21:37
大佬...
我不太会易语言的xx结构(可能是太习惯STL和LTL[一个内部库]了)
一个小时是读入,然后文本_分割, ...

读入一个小时?   我没看错吧.....
就算使用 读入文件() 也不会那么慢啊....
用易语言的打开文件, 读入一行这种速度会更快啊, 就跟c里的 fopen一样
要是你说易语言比c++慢个1-200倍, 这种我还是会信的.... 因为有些东西确实易语言比c++慢很多
回复 支持 反对

使用道具 举报

结帖率:100% (4/4)
 楼主| 发表于 2020-2-23 21:37:27 | 显示全部楼层   湖北省武汉市
福仔 发表于 2020-2-23 21:10
stl里的set本身就禁止重复插入, 而且在插入的时候也做了排序, 不得不说, c++的标准库还是很牛逼的
至于你 ...

大佬...
我不太会易语言的xx结构(可能是太习惯STL和LTL[一个内部库]了)
一个小时是读入,然后文本_分割,然后精益模块的,emmm
也就是说精益模块没有log优化?那是不是说我得自建字典树?

点评

读入一个小时? 我没看错吧..... 就算使用 读入文件() 也不会那么慢啊.... 用易语言的打开文件, 读入一行这种速度会更快啊, 就跟c里的 fopen一样 要是你说易语言比c++慢个1-200倍, 这种我还是会信的.... 因为有   广西壮族自治区崇左市  详情 回复 发表于 2020-2-23 21:45
回复 支持 反对

使用道具 举报

结帖率:100% (8/8)

签到天数: 26 天

发表于 2020-2-23 21:10:46 | 显示全部楼层   广西壮族自治区崇左市
本帖最后由 福仔 于 2020-2-23 21:13 编辑

stl里的set本身就禁止重复插入, 而且在插入的时候也做了排序, 不得不说, c++的标准库还是很牛逼的
至于你说易语言需要用1个小时... 这个肯定是易语言的代码写法有问题, 1000Wxx, 就算用我那个哈希表也不会那么慢
c++的set内部应该是使用红黑树, 具体到底是哈希表快还是红黑树快我没测试过, 不过不至于差别那么大
回复 支持 反对

使用道具 举报

结帖率:100% (4/4)
 楼主| 发表于 2020-2-23 20:47:36 | 显示全部楼层   湖北省武汉市
ds9660 发表于 2020-2-23 20:46
缺乏基本常识,1千万xx量,1秒都不够读取完的,能1秒结束,当然就是你代码出问题了

您可以运行试一试,
又:我ssd硬盘,C++没有标准输入输出,更没有窗体
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

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