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

DVectorT虐哭ListT

  [MemoryDiagnoser]public class DMesh3ScenarioBenchmark{private const int N = 2_000_000; // 模拟大规模几何操作private Random rand = new Random();[Benchmark]public void List_AddRemoveAndAccess(){var list = new List<int>();var removedIndices = new List<int>();// 1. 动态添加for (int i = 0; i < N; i++){list.Add(i);}// 2. 随机删除 10% 元素,模拟 gapfor (int i = 0; i < N / 10; i++){int idx = rand.Next(list.Count);removedIndices.Add(list[idx]);list.RemoveAt(idx);}// 3. 遍历访问long sum = 0;foreach (var v in list)sum += v;}[Benchmark]public void DVector_AddRemoveAndAccess(){var dvec = new DVector<int>();var removedIndices = new List<int>();// 1. 动态添加for (int i = 0; i < N; i++)dvec.Add(i);// 2. 随机删除 10% 元素,保留 gapfor (int i = 0; i < N / 10; i++){int idx = rand.Next(dvec.size);if (dvec[idx] != 0) // 假设 0 表示空位{removedIndices.Add(dvec[idx]);dvec[idx] = 0; // 模拟 gap}}// 3. 遍历访问,跳过空位long sum = 0;for (int i = 0; i < dvec.size; i++)if (dvec[i] != 0)sum += dvec[i];}}static  void Main(string[] args){var summary = BenchmarkRunner.Run<DMesh3ScenarioBenchmark>();
}

安装包:

dotnet add package BenchmarkDotNetdotnet add package geometry3Sharp

性能测试结果:
image

http://www.hskmm.com/?act=detail&tid=387

相关文章:

  • 201912_BUUCTF_Base64隐写
  • 软考达人-案例分析
  • kettle插件-sqlserver cdc插件,从sqlserver获取实时数据so easy,早早下班
  • golang netpoll 底层原理
  • manim如何按绝对时间管理动画
  • MATLAB R2025a安装教程和资源(中文版)
  • Xmanager Power Suite使用教程 - Invinc
  • try hack me.md
  • Snapshot-based State Replication 基于快照的状态复制网络框架,快照同步
  • Transformer通俗讲解
  • Ubuntu 安装微信
  • Ubuntu 安装截图软件 flameshot
  • Kali连接postgreSQL失败(已解决)
  • 主存储器和cpu的链接
  • 7. LangChain4j + 记忆缓存详细说明 - Rainbow
  • 英语_阅读_water protection team_待读
  • 滑动窗口(不与单调队列结合的总结)
  • Codeforces Round 1048 (Div 2)
  • 9.9未完成
  • 9.9日总结
  • 202205_宁波市赛_Cr4ck2
  • GitHub Copilot代码审查大升级!路径级指令+组织级规范,开发者效率再提升!
  • 20250909 GOJ 模拟赛
  • 在AI技术唾手可得的时代,挖掘新需求成为制胜关键——某知名语音识别框架需求洞察
  • SOS dp(高维前缀dp)
  • 英语_阅读_raise awareness about water conservation_待读
  • 自我介绍
  • MQ
  • 微信消息模版推送
  • [豪の学习笔记] 软考中级备考 基础复习#5