程序设计

专业和发烧友程序员的问答

4
在英特尔Sandybridge系列CPU中取消对管道程序的优化
我已经花了一个星期的时间来尝试完成这项任务,我希望这里的人可以带领我走上正确的道路。让我从讲师的指示开始: 您的分配与我们的第一个实验分配相反,后者是优化素数程序。您在此作业中的目的是简化程序,即使其运行缓慢。这两个都是占用大量CPU的程序。他们需要几秒钟才能在我们的实验室PC上运行。您可能无法更改算法。 要优化程序,请使用有关Intel i7管道运行方式的知识。想像一下重新排序指令路径以引入WAR,RAW和其他危险的方法。想办法最大限度地减少缓存的有效性。令人作呕的无能。 作业中选择了磨刀石或蒙特卡洛程序。缓存效率注释大部分仅适用于Whetstone,但我选择了蒙特卡洛模拟程序: // Un-modified baseline for pessimization, as given in the assignment #include <algorithm> // Needed for the "max" function #include <cmath> #include <iostream> // A simple implementation of the Box-Muller algorithm, used to generate // gaussian random numbers - necessary for the Monte Carlo method below …

23
从集合中获取元素
为什么不Set提供获取等于另一个元素的元素的操作? Set<Foo> set = ...; ... Foo foo = new Foo(1, 2, 3); Foo bar = set.get(foo); // get the Foo element from the Set that equals foo 我可以问一下 Set包含一个等于的元素bar,那么为什么不能得到那个元素呢?:( 为了明确起见,该equals方法被覆盖,但是它仅检查一个字段,而不是全部。因此,两个Foo被认为相等的对象实际上可以具有不同的值,这就是为什么我不能只使用foo。
322 java  collections  set  equals 

22
获得π值的最快方法是什么?
我正在寻找获得π值的最快方法,这是个人的挑战。更具体地说,我使用的方式不涉及使用#define诸如的常数,也不用M_PI硬编码数字。 下面的程序测试了我所知道的各种方式。理论上,内联汇编版本是最快的选择,尽管显然不是便携式的。我将其作为与其他版本进行比较的基准。在我的测试中,使用内置功能,该4 * atan(1)版本在GCC 4.2上运行速度最快,因为它可以将折叠atan(1)为常数。使用-fno-builtin指定的atan2(0, -1)版本是最快的。 这是主要的测试程序(pitimes.c): #include <math.h> #include <stdio.h> #include <time.h> #define ITERS 10000000 #define TESTWITH(x) { \ diff = 0.0; \ time1 = clock(); \ for (i = 0; i < ITERS; ++i) \ diff += (x) - M_PI; \ time2 = clock(); \ printf("%s\t=> %e, time …

30
错误:“无法通过套接字'/var/run/mysqld/mysqld.sock'(2)连接到本地MySQL服务器” —缺少/var/run/mysqld/mysqld.sock
我的问题始于我无法再以root用户身份登录mysql安装程序。我试图在不打开密码的情况下运行mysql ...但是每当我运行命令时 # mysqld_safe --skip-grant-tables & 我永远也回不了提示。我试图按照以下说明恢复密码。 屏幕如下所示: root@jj-SFF-PC:/usr/bin# mysqld_safe --skip-grant-tables 120816 11:40:53 mysqld_safe Logging to syslog. 120816 11:40:53 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 而且没有提示您开始输入SQL命令来重置密码。 当我按CTRL+ 杀死它时C,会收到以下消息: error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)' Check that mysqld is running and that the socket: …
322 mysql  linux  ubuntu 

10
在JavaScript中创建自定义回调
我需要做的就是在当前函数执行结束时执行一个回调函数。 function LoadData() { alert('The data has been loaded'); //Call my callback with parameters. For example, //callback(loadedData , currentObject); } 此功能的使用者应如下所示: object.LoadData(success); function success(loadedData , currentObject) { //Todo: some action here } 我该如何实施?
322 javascript 

9
Java订购地图
在Java中,是否有一个对象的作用类似于用于存储和访问键/值对的Map,但是可以返回键的有序列表和值的有序列表,从而使键和值列表的顺序相同? 因此,按照代码进行解释,我正在寻找某种行为,就像我的虚拟OrderedMap: OrderedMap<Integer, String> om = new OrderedMap<>(); om.put(0, "Zero"); om.put(7, "Seven"); String o = om.get(7); // o is "Seven" List<Integer> keys = om.getKeys(); List<String> values = om.getValues(); for(int i = 0; i < keys.size(); i++) { Integer key = keys.get(i); String value = values.get(i); Assert(om.get(key) == value); }
322 java  collections 


20
通过按Enter提交表单(不带提交按钮)
好吧,我正在尝试通过按Enter键而不是显示“提交”按钮来提交表单。我不希望尽可能地使用JavaScript,因为我希望所有功能都可以在所有浏览器上运行(我知道的唯一JS方式就是使用事件)。 现在,表单如下所示: <form name="loginBox" target="#here" method="post"> <input name="username" type="text" /><br /> <input name="password" type="password" /> <input type="submit" style="height: 0px; width: 0px; border: none; padding: 0px;" hidefocus="true" /> </form> 哪个效果很好。当用户按下Enter键时,提交按钮将起作用,并且该按钮在Firefox,IE,Safari,Opera和Chrome中不显示。但是,我仍然不喜欢该解决方案,因为很难知道它是否适用于所有浏览器的所有平台。 谁能提出更好的方法?还是说它尽可能地好?
322 html  forms  submit 

11
获取URL查询字符串参数
从格式如下的URL查询字符串中获取参数的“较少代码”方法是什么? www.mysite.com/category/subcategory?myqueryhash 输出应为: myqueryhash 我知道这种方法: www.mysite.com/category/subcategory?q=myquery <?php echo $_GET['q']; //Output: myquery ?>
322 php  url  query-string 

6
如何在Python中将浮点数格式化为固定宽度
如何按照以下要求将浮点数格式化为固定宽度: 如果n <1,则前导零 添加尾随的十进制零以填充固定宽度 截断超出固定宽度的十进制数字 对齐所有小数点 例如: % formatter something like '{:06}' numbers = [23.23, 0.123334987, 1, 4.223, 9887.2] for number in numbers: print formatter.format(number) 输出会像 23.2300 0.1233 1.0000 4.2230 9887.2000

10
Google Web搜索API已过时,现在有哪些替代方案?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 5年前关闭。 改善这个问题 Google Web Search API已被弃用,并已替换为Custom Search API(请参阅http://code.google.com/apis/websearch/)。 我想搜索整个网络,但是使用新的API只能搜索自定义网站。 有没有办法以编程方式搜索整个网络?我能够从Java程序中使用JSON查询旧API。



16
Python 3 ImportError:没有名为“ ConfigParser”的模块
我想pip install的MySQL-python包,但我得到的ImportError。 Jans-MacBook-Pro:~ jan$ /Library/Frameworks/Python.framework/Versions/3.3/bin/pip-3.3 install MySQL-python Downloading/unpacking MySQL-python Running setup.py egg_info for package MySQL-python Traceback (most recent call last): File "<string>", line 16, in <module> File "/var/folders/lf/myf7bjr57_jg7_5c4014bh640000gn/T/pip-build/MySQL-python/setup.py", line 14, in <module> from setup_posix import get_config File "./setup_posix.py", line 2, in <module> from ConfigParser import SafeConfigParser ImportError: No module named …
322 python  python-3.x 

6
Python:defaultdict的defaultdict?
有没有一种方法可以defaultdict(defaultdict(int))使以下代码正常工作? for x in stuff: d[x.a][x.b] += x.c_int d需要临时构建,具体取决于x.a和x.b元素。 我可以使用: for x in stuff: d[x.a,x.b] += x.c_int 但后来我将无法使用: d.keys() d[x.a].keys()

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.