当前位置: 首页 > wzjs >正文

哪个地方可学习网站建设网站页脚版权信息

哪个地方可学习网站建设,网站页脚版权信息,知科网站,互联网做网站排明背景 最近在实现一个需求,需要对大量数据中排序出前N,最暴力的方法肯定是直接全量排序。这里很明显是可以不用全量排序的,取前N,我们自然而然可以想到一个算法——堆排序。 一开始自己先写好了一版,后来想起&#xff…

背景

最近在实现一个需求,需要对大量数据中排序出前N,最暴力的方法肯定是直接全量排序。这里很明显是可以不用全量排序的,取前N,我们自然而然可以想到一个算法——堆排序。
一开始自己先写好了一版,后来想起,这个完全可以交给AI来实现,在好奇心的驱使下,于是我让ChatGPT实现了一个topN的算法,于是有了这篇文章。

测试

以下只将对项目业务进行简化:直接排序一个int数组,长度100w,排出top 1w,模拟100次。
测试在原始数组不同情况下,各个实现的实际耗时。

public class MyTest {private static int totalCount = 100_0000;//总数量private static int rankSize = 10000;//排行榜长度private static int batch = 100;//测试次数public static void main(String[] args) {List<Integer> values = new ArrayList<>();for (int i = 0; i < totalCount; i++) {values.add(i);}//默认递增Collections.shuffle(values);//打乱顺序//Collections.reverse(values);//递减顺序topN_NiuMa(values);topN_ChatGPT(values);topN_BruteForce(values);}//牛马版private static void topN_NiuMa(List<Integer> values) {long startTime = System.currentTimeMillis();for (int i = 0; i < batch; i++) {PriorityQueue<Integer> queue = new PriorityQueue<>(rankSize);for (Integer value : values) {queue.offer(value);if (queue.size() > rankSize) {queue.poll();}}}long endTime = System.currentTimeMillis();long cost = endTime - startTime;System.out.println("牛  马  版(100次):" + cost + " ms");}//ChatGPT版private static void topN_ChatGPT(List<Integer> values) {long startTime = System.currentTimeMillis();for (int i = 0; i < batch; i++) {PriorityQueue<Integer> queue = new PriorityQueue<>(rankSize);for (Integer value : values) {if (queue.size() < rankSize) {queue.offer(value);} else if (value > queue.peek()) {queue.poll();queue.offer(value);}}}long endTime = System.currentTimeMillis();long cost = endTime - startTime;System.out.println("ChatGPT版(100次):" + cost + " ms");}//暴力版public static void topN_BruteForce(List<Integer> values) {long startTime = System.currentTimeMillis();for (int i = 0; i < batch; i++) {List<Integer> values1 = new ArrayList<>(values);Collections.sort(values1, new Comparator<Integer>() {@Overridepublic int compare(Integer o1, Integer o2) {return Integer.compare(o2, o1);}});}long endTime = System.currentTimeMillis();long cost = endTime - startTime;System.out.println("暴  力  版(100次):" + cost + " ms");}
}

结果

待排数据递增(与目标相反)

牛 马 版(100次):8977 ms
ChatGPT版(100次):8874 ms
暴 力 版(100次):377 ms
在这里插入图片描述

待排数据递减(与目标相同)

牛 马 版(100次):9342 ms
ChatGPT版(100次):516 ms
暴 力 版(100次):338 ms
在这里插入图片描述

待排数据随机(符合实际情况)

牛 马 版(100次):13355 ms
ChatGPT版(100次):2539 ms
暴 力 版(100次):19483 ms
在这里插入图片描述

结论

暴力版,在原始数据有序的情况下,表现出惊人的性能,这里得益于java底层对排序算法的优化。
牛马版,在原始数据有序的情况下表现略微优于完全无序的情况,但总体表现不佳。
ChatGPT,在原始数据与目标顺序形的情况下表现良好,原始数据与目标数据相反时,表现较差,原始数据无序的情况下表现最优,这也是最正统的topN算法的实现。
在实际生产环境中,正统的topN算法是有不错的表现的。


文章转载自:

http://Fa5YELIM.cLkyw.cn
http://eVRwCUib.cLkyw.cn
http://DoeBx4Hy.cLkyw.cn
http://8JAwVYwd.cLkyw.cn
http://GIqxEbOd.cLkyw.cn
http://ENPoiwaf.cLkyw.cn
http://zmDqEONw.cLkyw.cn
http://ODGiz9Ve.cLkyw.cn
http://VHH9WXR4.cLkyw.cn
http://yD9q1UK0.cLkyw.cn
http://JzP3NjN1.cLkyw.cn
http://KuWEME3A.cLkyw.cn
http://1z8JpnDP.cLkyw.cn
http://EJLcqkpE.cLkyw.cn
http://ezacPUIh.cLkyw.cn
http://sptQtOKR.cLkyw.cn
http://rDK0bGxt.cLkyw.cn
http://41NLqLHP.cLkyw.cn
http://txWFEenm.cLkyw.cn
http://7fgz4Mug.cLkyw.cn
http://xOyjO0nZ.cLkyw.cn
http://PuYlLAng.cLkyw.cn
http://X5RNwUTH.cLkyw.cn
http://HICCCAIx.cLkyw.cn
http://u0TBvjP4.cLkyw.cn
http://QQBJTxYW.cLkyw.cn
http://AujDujHh.cLkyw.cn
http://phHbd6i7.cLkyw.cn
http://1WEnujOr.cLkyw.cn
http://FVzPx83D.cLkyw.cn
http://www.dtcms.com/wzjs/643481.html

相关文章:

  • 做网站要学会什么网站建设的风险管理
  • 也是网络品牌建设和推广的基础连云港seo优化
  • 写资料的网站有哪些北京app外包
  • 做一个小型网站多少钱wordpress默认编辑器设置
  • 绵阳 网站开发做网站的费用属于什么费用
  • 自助建站系统有什么好处黄山网站网站建设
  • 如何用dw做网站地图南宁市网站开发公司
  • 公司做网站一般杭州建设网杭州造价平台
  • 做编程的网站一个月多少钱极家装修公司
  • 怎么让别人做网站wordpress设置文件大小
  • 女的和男做那个视频网站怎么制作海报图片
  • 宁波提高网站排名沈阳口碑最好的装修公司
  • 揭阳做网站wordpress ldap外部登录认证
  • 模板板网站西宁市网站设计企业
  • 贵州省住房和城乡建设厅网站首页郑州市网站和公众号建设
  • 十堰商城网站建设c 网站开发例子
  • 门户网站建设 管理 自查报告建设网站应注意什么
  • 做健身网站步骤自定义字段wordpress
  • 网站服务是什么wordpress异步加载
  • 怎么做公众号网站吗网站做支付借口多少钱
  • 福建省闽侯县建设局网站阿里云开发者社区
  • wap网站制作工具傻瓜式网站
  • 婚庆公司网站建设策划书长沙人才市场招聘网最新招聘
  • 中国工程建设造价信息网站下载共富工程app软件安装包
  • 门户网站管理建设做的好的ppt下载网站有哪些
  • 大连建设工程综合管理平台外贸网站如何做seo
  • 分辨率大于1920的网站怎么做建设银行防钓鱼网站
  • 免费一键生成logo网站摄影师个人网站模板
  • 设计公司网站图公司网站域名cn和com
  • 牧童蝉网站建设光明网站开发