我的编码时间不长,所以我不熟悉哪种技术最快,所以我想知道在VS或第三方工具中是否有办法做到这一点?
谢谢
最近在一次采访中,我被问到了几个与技术问题过程中出现的各种算法的Big-O有关的问题.我不认为我在这方面做得很好......自从我参加编程课程以来我被要求计算算法的Big-O十年以来,我没有一个关于任何东西的'Big-O'的讨论我一直在努力或设计.我参与了许多与其他团队成员的讨论以及与我一起工作过的关于代码复杂性和速度的架构师的讨论,但我从未参与过在实际项目中实际使用Big-O计算的团队.讨论总是"考虑到我们对数据的理解,有更好或更有效的方法吗?" 从来没有"这个算法的复杂性是什么"?
我想知道人们是否真的在真实的单词中讨论他们的代码的"大O"?
我想介绍一下我的JRuby应用程序.对于MRI,我总是使用ruby-prof,但我认为这不适用于JRuby.我不想使用Java-profiler,因为它不会给我ruby行号.
有一个jruby教授?
在使用-pg注入gprof配置文件检测代码的选项编译我的c ++源时,编译失败并显示undefined reference to _mcount错误.
没有这个选项,一切都可以编译(并运行).我的情况有什么问题?(Solaris 10 SPARC平台)
我需要分析我经常运行的测试套件bundle exec rspec spec/并生成GIF图像.
运行perftools.rb以使其与bundler一起正常工作的命令是什么?
我需要对需要在数组中旋转一些值的文档执行更新操作.MongoDB的更新查询目前不允许你$pop,然后$push在更新同一领域.在网上搜索建议后,我认为db.eval()最适合我的使用,因为它确保了原子性,我正在执行的操作非常短,因此它不会长时间锁定数据库.
这是我正在尝试做的事情的一个例子:
db.eval(function (id, newVal) {
doc = db.collection.findOne({_id: id});
doc.values.shift();
doc.values.push(newVal);
db.collection.save(doc);
}, id, newVal);
Run Code Online (Sandbox Code Playgroud)
这完美地运作!然后我启用了mongoDB分析,看看eval()命令花了多少毫秒,我总是得到少于1毫秒的结果:
> db.system.profile.find({op: "command"}, {"millis": 1})
{ "millis" : 0 }
{ "millis" : 0 }
...
Run Code Online (Sandbox Code Playgroud)
这对我来说是个好消息,除了我的应用程序是在python中,所以我使用pymongo客户端来执行eval()命令.(上面的数据来自mongo shell)但现在,当我eval()使用pymongo 运行相同的命令时:
conn = pymongo.Connection(mongo_server_hostname)
db = conn.my_db
db.eval("""function (id, newVal) {
doc = db.collection.findOne({_id: id});
doc.values.shift();
doc.values.push(newVal);
db.collection.save(doc);
}""", id, new_val)
Run Code Online (Sandbox Code Playgroud)
我得到了非常不同的分析结果:
> db.system.profile.find({op: "command"}, {"millis": 1})
{ "millis" : 13 }
{ …Run Code Online (Sandbox Code Playgroud) 我试图使用命令行工具在Mac OS X配置文件的C/C++代码,我使用-pg与选项gcc来运行gprof在Linux上,但我似乎无法找到gprof在Mac上,即使我有这个页面的说明:其他命令行工具(iOS)或其他命令行工具(mac).
gprof:Produces execution profiles based on an execution analysis of a program.
Run Code Online (Sandbox Code Playgroud)
我安装的命令行工具,所以其他的命令行工具,如otool和atos可用.我用谷歌搜索这个页面(https://apple.stackexchange.com/questions/154289/installing-gprof-on-mac),说不gprof支持,但我不确定我什么时候有一个描述该工具的Apple doc ; 无论如何,我试图用来brew下载gprof,但它没有用.
我发现尝试在Mac上使用带有C++代码的gprof,但我没有输出instruments -t.我还在mac os x上发现了profiling c ++,但我不想打开Instruments,因为我想自动化一些进程并尝试保持跨平台系统.
gprof?我是eclipse的TPTP分析工具的新手.我收到了TPTP跟踪,我需要帮助才能理解所提供的内容.包含函数调用条目的跟踪与条目函数调用的参数一起存在.它来自JHotDraw,一个Java程序.以下是跟踪示例:
输入:CH/ifa/draw/standard/ToolButton.paint --- [sun.java2d.SunGraphics2D [font = javax.swing.plaf.FontUIResource [family = Dialog,name = Dialog,style = bold,size = 12], color = sun.swing.PrintColorUIResource [r = 51,g = 51,b = 51]]]已退出:CH/ifa/draw/standard/ToolButton.paint --- [sun.java2d.SunGraphics2D [font = javax.swing] .plaf.FontUIResource [家族=对话框,名称=对话框,风格=粗体,大小= 12],颜色= sun.swing.PrintColorUIResource [R = 51,G = 51,b = 51]]]
输入:CH/ifa/draw/application/DrawApplication.paletteUserOver --- [CH.ifa.draw.standard.ToolButton [,304,1,24x24,disabled,alignmentX = 0.0,alignmentY = 0.5,border = javax.swing. border.CompoundBorder @ 1308786,旗帜= 296,MAXIMUMSIZE =,=的minimumSize,首选大小=,=的DefaultIcon @ javax.swing.ImageIcon中1f647e2,disabledIcon = sun.swing.ImageIconUIResource @ d253d9,disabledSelectedIcon =,余量= javax.swing.plaf中. InsetsUIResource [顶= 2,左= 14,底= 2,右= 14],的paintBorder =真,paintFocus =真,pressedIcon = javax.swing.ImageIcon中@ 924039,rolloverEnabled =真,rolloverIcon =,rolloverSelectedIcon =,selectedIcon =的javax …