You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在J语言中确定处理时间并构建运行时统计矩阵?

嘿,我来帮你解决J语言里的这两个小问题!

在J语言中计算程序运行时间

J语言内置了专门用来统计代码执行时间的工具,最常用的是6!:2这个动词——它会返回执行指定表达式所花费的时间,单位是秒。

举个简单例子,如果你要测试生成100万个随机数的耗时,直接这么写:

6!:2 '1000000?1000'  NB. 计算生成100万个0-999随机数的时间

如果想要多次运行取平均时间(减少误差),可以搭配6!:3先设置运行次数,再用6!:2获取结果:

6!:3 5 [ 6!:2 '1000000?1000'  NB. 运行5次,返回平均耗时
构建指定格式的统计矩阵

要生成你需要的带表头的统计表格,最方便的方式是使用J语言的tables扩展包,步骤如下:

  1. 先加载扩展包:
load 'tables'
  1. 准备你的数据:比如文章数量是0到6,对应的时间是0、2、4…12:
article_counts =: i.7       NB. 生成0到6的整数序列
process_times =: 2 * i.7    NB. 生成对应的时间数据
  1. 把数据组合成矩阵,再用table函数生成带表头的表格:
stats_table =: table 'number of article';'time' ; article_counts ,. process_times
  1. 最后用display函数输出,就能得到你想要的格式:
display stats_table

输出结果会和你描述的结构完全一致:
┌─────────────────┬────┐
│number of article│time│
├─────────────────┼────┤
│0 │0 │
├─────────────────┼────┤
│1 │2 │
├─────────────────┼────┤
│2 │4 │
├─────────────────┼────┤
│3 │6 │
├─────────────────┼────┤
│4 │8 │
├─────────────────┼────┤
│5 │10 │
├─────────────────┼────┤
│6 │12 │
└─────────────────┴────┘

如果不想依赖扩展包,也可以手动构造嵌套列表后用display输出,但tables包的方式更简洁易维护。

内容的提问来源于stack exchange,提问作者Kevin Choi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:29:16