小编pax*_*blo的帖子

哪里可以找到一些优秀的开源Android游戏来加速学习过程?

这个问题在这里列出了一些与一般Android应用程序的良好链接(我已经看过了),但我对特定游戏中的那一刻感兴趣(板式,智能游戏而不是动作 - 换句话说,我不知道需要实时).

这类应用程序的最佳来源是什么?我想查看源代码,让自己快速上手.

(请不要只是谷歌的结果,我已经做到了,选择有点稀缺.我对任何实际花时间寻找和评估好网站的人感兴趣 - 所以理想情况下,你已经是一名有兴趣开发游戏的Android开发者.

android

21
推荐指数
3
解决办法
6万
查看次数

检查NaN号码

是否可以检查号码是否有问题NaN

c++ numbers

21
推荐指数
2
解决办法
2万
查看次数

当一个条件被采取行动时,你如何获得进入下一行的awk?

我正在尝试编写一个awk脚本来检查某些条件并丢弃符合这些条件的行.

具体条件是丢弃文件的前两行以及以文本开头的任何行xyzzy:.为此,我编写了:

awk '
    NR < 2    {}
    /^xyzzy:/ {}
              {print}'
Run Code Online (Sandbox Code Playgroud)

我认为它会丢掉满足这两个条件之一的线条,否则就会打印出来.

不幸的是,print即使该线与其他两种模式中的一种相匹配,它似乎也在被处理.

是否有类似C的continue动作将在下一行移动而忽略当前行的所有其他条件检查?

我想我可以使用类似((NR > 1) && (!/^xyzzy:/)) {print}第三条规则的东西,但这对我来说似乎相当难看.

或者,还有另一种方法吗?

awk

21
推荐指数
1
解决办法
3万
查看次数

计算两点之间的距离

我需要创建一个计算两点之间距离的类.我被困了,我是一个初学者.这是我的课程:

package org.totalbeginner.tutorial;

public class Point {

    public double x;
    public double y;

    Point(double xcoord, double ycoord){
        this.x = xcoord;
        this.y = ycoord;
    }

    public double getX() {
        return x;
    }

    public double getY() {
        return y;
    }    
}
Run Code Online (Sandbox Code Playgroud)

第二节课.

package org.totalbeginner.tutorial;

public class Line {

    double x;
    double y;

    Point p1 = new Point(2.0,2.0);
    Point p2 = new Point(4.0,4.0);
    Point mp = new Point(x,y);

    public void midpoint() {
        x = (p1.getX() + p2.getX()) / 2;
        y = (p1.getY() + …
Run Code Online (Sandbox Code Playgroud)

java

20
推荐指数
4
解决办法
9万
查看次数

NASM中equ和db之间有什么区别?

len:  equ  2
len:  db   2
Run Code Online (Sandbox Code Playgroud)

它们是否相同,产生的标签可以代替2?如果没有,那么每份申报表的优缺点是什么?它们可以互换使用吗?

nasm

20
推荐指数
3
解决办法
1万
查看次数

Perl或C在解析时速度更快吗?

我有一些非常大的日志文件,我需要解析它们.易于实现显然指向Perl和regex组合(我仍然是新手).但速度怎么样?在C中实现它会更快吗?每个日志文件大约为2 GB.

c optimization perl parsing

19
推荐指数
7
解决办法
8810
查看次数

有没有办法让这个哈希查找更快?

我要求(非常)快速处理有限范围的字符串,统计它们的值.输入文件的格式如下:

January    7
March     22
September 87
March     36
Run Code Online (Sandbox Code Playgroud)

等等.因为线宽是相同的,所以我可以简单fread快速地阅读一行,并且我开发了一个完美的散列函数,但是我想知道是否有人可以提供任何关于如何使它更快的建议.我将介绍每个建议,看看它是怎么回事.

散列函数基于月份名称,以允许将值快速分配给存储桶.跟我来这儿.我首先想出了完美哈希的最小字符数:

January
February
March
April
May
June
July
August
September
October
November
December
Run Code Online (Sandbox Code Playgroud)

请记住,月是所有九个字符由于我拥有整个输入线.

不幸的是,没有一个列标记一个月的唯一.第1列重复J,第2列重复a,第3列重复r,第4列重复u,第5列向前复制<space>(还有其他重复但有一个足以阻止单列散列键).

但是,通过使用第一和第四列,我得到的值Ju,Fr,Mc,Ai,M<space>,Je,Jy,Au,St,Oo,NeDe,这是独一无二的.此文件中没有无效值,因此我不必担心输入数据的存储桶不正确.

通过查看字符的十六进制代码,我发现通过与策略值进行AND运算可以获得较低的唯一值:

FirstChar  Hex  Binary     &0x0f
---------  ---  ---------  -----
   A       x41  0100 0001      1 …
Run Code Online (Sandbox Code Playgroud)

c optimization perfect-hash

19
推荐指数
2
解决办法
905
查看次数

stdout行默认是缓冲,无缓冲还是不确定?

7.9.13/7c99规定:

在程序启动时,预定义了三个文本流,无需明确打开 - 标准输入(用于读取传统输入),标准输出(用于写入常规输出)和标准错误(用于写入诊断输出).

最初打开时,标准错误流未完全缓冲; 当且仅当可以确定流不参考交互设备时,标准输入和标准输出流被完全缓冲.

这是有道理的.如果您将标准输出推送到文件,则需要将其完全缓冲以提高效率.

但是,当你无法确定设备是非交互式的(即正常输出到终端)时,我在标准中没有提到输出是线路缓冲还是无缓冲.

我问的原因是我在这里回答我应该fflush(stdout);在两个陈述之间插入一个:

printf ("Enter number> ");
// fflush (stdout); needed ?
if (fgets (buff, sizeof(buff), stdin) == NULL) { ... }
Run Code Online (Sandbox Code Playgroud)

因为我没有printf用换行符终止.任何人都可以清除这个吗?

stdout c99 buffered

18
推荐指数
1
解决办法
1万
查看次数

如何向Linux内核提交潜在补丁?

我们有一些软件依赖于另一个(非常常用的)应用程序的某些行为,这些应用程序现在已经改变,使我们当前的实现可行,但不是最佳.

我们认为这种变化可能会影响其他一些应用,特别是在性能监控领域,我们已经找到了一种解决方案,我们相信这将改善一系列其他潜在问题.

不幸的是,所述解决方案是内核更改(相对简单但影响很大,如果我们填充它)并且我们没有提交内核补丁进行审核的经验.

有没有人在SO上提交了一个补丁(虽然我很欣赏所有的答案,我怀疑最好的答案会来自那些已经完成整个过程的人,甚至没有成功)?你有没有接受过(Alan Cox等人在SO上有什么机会)?

正确的流程是什么?我无意向Linus发送一封电子邮件,因为我知道他有一群保护者,你应该在他到达之前经过这些保护.我如何找出谁负责内核的特定部分.

我可能会过于乐观地认为某个内核世界从未听说过可以做出贡献,但我有兴趣了解一下.


编辑更多细节:

这个更改实际上并不是针对性能错误,而是对进程终止时编写的进程记帐条目(当前)的改进(在我看来).

Websphere App Server(啊,IBM,祝福他们的小心灵)改变了它的作用; JVM过去经常退出以便他们的条目被写入,我们可以使用它进行退款.现在它让JVM闲置数月,这意味着数据无法及时获得,除非我们定期强制关闭WAS.不知怎的,我不认为IBM软件集团会为我们修复他们的软件:-).无论如何,我相信它对于其他长期存在的过程可能是一个有用的特性.

当前进程退出时会写入类型3进程记帐记录,我们正在查看的是一种在进程仍然处于活动状态时定期写入N类记录的机制,给出自上次写入以来的数据(如果这是第一次).退款或性能监控应用程序可以选择使用类型3记录(完全不变)或临时类型N记录.我们目前的解决方法是监控特定流程的/ proc/PID/stat,但这是一个可怕的问题,因为它与实际流程会计不能很好地集成.

它不需要经常(我们会对24小时感到满意),但可能会产生性能影响,因为目前仅在流程exit()上完成的工作必须偶尔在流程上下文切换时完成.Linus等人可能不喜欢这个想法,因为它可能是代码的高影响区域(甚至检查自上次写入以来是否已经24小时对他们来说可能太慢).

不过,感谢到目前为止的所有答案,我会看到我如何去.给我几天,我会接受最好的答案.

linux kernel patch

17
推荐指数
2
解决办法
4267
查看次数

MySQL IN()为两个值/数组?

我很难找到一种更好的方法来搜索MySQL中表中的一对值.我有一个数组中的值对,并希望复制IN()函数,但超过1个值.

例如,目的; 我有以下3对:

foo,1
boo,2
goo,3
Run Code Online (Sandbox Code Playgroud)

目前的解决方案让我:

SELECT * FROM [table] WHERE 
(column1 = 'foo' AND column2 = 1) OR
(column1 = 'boo' AND column2 = 2) OR
(column1 = 'goo' AND column2 = 3);
Run Code Online (Sandbox Code Playgroud)

我想有一个更"性感"的解决方案,看到我可以有多达一百对,并且可能有些让我感到恶心.谢谢!!!

mysql

16
推荐指数
1
解决办法
5211
查看次数

标签 统计

c ×2

optimization ×2

android ×1

awk ×1

buffered ×1

c++ ×1

c99 ×1

java ×1

kernel ×1

linux ×1

mysql ×1

nasm ×1

numbers ×1

parsing ×1

patch ×1

perfect-hash ×1

perl ×1

stdout ×1