回答另一个Stack Overflow问题(这个)我偶然发现了一个有趣的子问题.排序6个整数数组的最快方法是什么?
由于问题是非常低的水平:
&&
或||
).真的这个问题是一种高尔夫,其目标不是最小化源长度而是执行时间.我把它叫做"Zening"代码在本书的标题中的代码优化禅由迈克尔·亚伯拉什及其续集.
至于为什么它很有趣,有几个层次:
这是我的参考(天真的,未优化的)实现和我的测试集.
#include <stdio.h>
static __inline__ int sort6(int * d){
char j, i, imin;
int tmp;
for (j = 0 ; j < 5 ; j++){
imin = j;
for (i = j + 1; i < 6 ; i++){
if (d[i] < d[imin]){
imin = i;
}
}
tmp = d[j];
d[j] = d[imin];
d[imin] = …
Run Code Online (Sandbox Code Playgroud) 我正在解决一个问题,它涉及非常快速地排序10个数字(int32).我的应用程序需要尽可能快地对10个数字进行数百万次排序.我正在对数十亿个元素的数据集进行采样,每次我需要从中挑选10个数字(简化)并对它们进行排序(并从排序的10个元素列表中得出结论).
目前我正在使用插入排序,但我想我可以实现一个非常快速的自定义排序算法,针对10个数字的特定问题,这将超过插入排序.
有没有人知道如何处理这个问题?
我克隆了一个github存储库,并没有在本地进行任何更改.Github存储库在同一分支上提交了提交.
我想在我的笔记本电脑上安装Nachos,笔记本电脑上有Ubuntu 11.04.
代码在C中,所以要构建它我假设我需要交叉编译器.这就是我的问题所在.我使用命令下载了MIPS交叉编译器的源代码
wget http://mll.csie.ntu.edu.tw/course/os_f08/assignment/mips-decstation.linux-xgcc.gz
Run Code Online (Sandbox Code Playgroud)
我用它解压缩它
tar zxvf mips-decstation.linux-xgcc.gz
Run Code Online (Sandbox Code Playgroud)
这没关系,但是当我尝试构建nachos操作系统的源代码时,使用make,我得到了这个错误 -
/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory compilation terminated. make: *** [bitmap.o] Error 1
Run Code Online (Sandbox Code Playgroud)
我试图按照这里给出的指示 - http://mll.csie.ntu.edu.tw/course/os_f08/217.htm,一切正常,除非我尝试使用make.
我需要使用D3.js制作一个FadeOut方法(类似于jQuery).我需要做的是使用不透明度设置为0 transition()
.
d3.select("#myid").transition().style("opacity", "0");
Run Code Online (Sandbox Code Playgroud)
问题是我需要一个回调来实现转换完成的时间.我该如何实现回调?
关于Stack Overflow的第一个问题,请耐心等待!我是d3.js的新手,但一直对其他人用它能够完成的事情感到惊讶......而且我自己用它做出的一点点进展几乎令人惊讶!很明显,我不是在找东西,所以我希望这里善良的灵魂可以向我展示光明.
我的目的是创建一个可重用的javascript函数,它只执行以下操作:
我把http://bl.ocks.org/950642作为起点,因为这基本上是我想要创建的那种布局:
这是我的代码的样子:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="underscore-min.js"></script>
<script type="text/javascript" src="d3.v2.min.js"></script>
<style type="text/css">
.link { stroke: #ccc; }
.nodetext { pointer-events: none; font: 10px sans-serif; }
body { width:100%; height:100%; margin:none; padding:none; }
#graph { width:500px;height:500px; border:3px solid black;border-radius:12px; margin:auto; }
</style>
</head>
<body>
<div id="graph"></div>
</body>
<script type="text/javascript">
function myGraph(el) {
// Initialise the graph object
var graph = this.graph = {
"nodes":[{"name":"Cause"},{"name":"Effect"}],
"links":[{"source":0,"target":1}]
};
// Add and …
Run Code Online (Sandbox Code Playgroud) 我有一系列的svg矩形(使用D3.js),我想在鼠标悬停时显示一条消息,消息应该被一个充当背景的框包围.它们应该完全彼此对齐并与矩形(顶部和居中)对齐.做这个的最好方式是什么?
我尝试使用"x","y","width"和"height"属性添加svg文本,然后在svg rect之前添加.问题是文本的参考点在中间(因为我希望它居中对齐我使用text-anchor: middle
),但对于矩形,它是左上角坐标,加上我想在文本周围留一点边距,这使得它有点像痛苦
另一种选择是使用一个html div,这很好,因为我可以直接添加文本和填充但我不知道如何获得每个矩形的绝对坐标.有没有办法做到这一点?
D3 在此处具有力导向布局.有没有办法将缩放添加到此图表?目前,我能够捕获鼠标滚轮事件,但我不确定如何编写重绘功能本身.有什么建议?
var vis = d3.select("#graph")
.append("svg:svg")
.call(d3.behavior.zoom().on("zoom", redraw)) // <-- redraw function
.attr("width", w)
.attr("height", h);
Run Code Online (Sandbox Code Playgroud) 我做到了 sudo cat /proc/1/maps -vv
我试图弄清楚输出.我可以看到很多共享库按预期映射到内存映射段.
7f3c00137000-7f3c00179000 r-xp 00000000 08:01 21233923 /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8
7f3c00179000-7f3c00379000 ---p 00042000 08:01 21233923 /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8
7f3c00379000-7f3c0037a000 r--p 00042000 08:01 21233923 /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8
7f3c0037a000-7f3c0037b000 rw-p 00043000 08:01 21233923 /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8
7f3c0037b000-7f3c00383000 r-xp 00000000 08:01 21237216 /lib/x86_64-linux-gnu/libnih-dbus.so.1.0.0
7f3c00383000-7f3c00583000 ---p 00008000 08:01 21237216 /lib/x86_64-linux-gnu/libnih-dbus.so.1.0.0
7f3c00583000-7f3c00584000 r--p 00008000 08:01 21237216 /lib/x86_64-linux-gnu/libnih-dbus.so.1.0.0
7f3c00584000-7f3c00585000 rw-p 00009000 08:01 21237216 /lib/x86_64-linux-gnu/libnih-dbus.so.1.0.0
7f3c00585000-7f3c0059b000 r-xp 00000000 08:01 21237220 /lib/x86_64-linux-gnu/libnih.so.1.0.0
7f3c0059b000-7f3c0079b000 ---p 00016000 08:01 21237220 /lib/x86_64-linux-gnu/libnih.so.1.0.0
7f3c0079b000-7f3c0079c000 r--p 00016000 08:01 21237220 /lib/x86_64-linux-gnu/libnih.so.1.0.0
Run Code Online (Sandbox Code Playgroud)
接近尾声有类似的东西
7f3c0165b000-7f3c0177e000 rw-p 00000000 00:00 0 [heap]
7fff97863000-7fff97884000 …
Run Code Online (Sandbox Code Playgroud) 我看过像Cufon和typeface.js这样的东西,但它们似乎是SIFR替代品,不允许你设置自由形式坐标并将自定义类型绘制到 <canvas>
有人有任何想法吗?
d3.js ×4
javascript ×4
algorithm ×2
force-layout ×2
sorting ×2
c ×1
canvas ×1
cufon ×1
fonts ×1
gcc ×1
git ×1
github ×1
gpgpu ×1
html5 ×1
jquery ×1
kernel ×1
linux ×1
linux-kernel ×1
mips ×1
nachos ×1
optimization ×1
svg ×1
tooltip ×1
transition ×1
typeface.js ×1
ubuntu ×1
vdso ×1
zoom ×1