小编Tom*_*ter的帖子

与其他几个大文件相比,计算文件唯一性(%)的最有效方法

我有大约30个500MB文件,每行一个字.我有一个脚本,用伪bash做到这一点:

for i in *; do
    echo "" > everythingButI
    for j in *-except-$i; do
        cat $j >> everythingButI
        sort everythingButI | uniq > tmp
        mv tmp everythingButI
    done
    comm $i everythingButI -2 -3 > uniqueInI

    percentUnique=$(wc -l uniqueInI) / $(wc -l $i) * 100
    echo "$i is $percentUnique% Unique"
done
Run Code Online (Sandbox Code Playgroud)

它计算每个文件的"唯一性"(文件已经在每个文件中排序和唯一).

所以,如果我有文件:

file1    file2   file3
a        b       1
c        c       c
d        e       e
f        g
         h
Run Code Online (Sandbox Code Playgroud)

file1将是75%唯一(因为其中1/4的行在另一个文件中找到),file2将是60%唯一,file3将是33.33%唯一.但是要把它变成30个文件,500MB一个弹出,需要一点点才能运行.

我想编写一个python脚本,它可以做得更快,更快,但我想知道实际上最快的算法是什么.(我在PC上也只有2GB的RAM.)

任何人都有关于算法的意见,或者知道更快的方法吗?

algorithm file

5
推荐指数
1
解决办法
174
查看次数

Raiseerror和Concat的消息

我想做这样的事情

raiserror(concat('Error in case @isFishy =', @isFishy, ' @isSmarmy=', @isSmarmy, ' @isTasty = ', @isTasty), 10, 1)
--or
raiserror('Error in case @isFishy =' + @isFishy + ' @isSmarmy=' + @isSmarmy + ' @isTasty = ' + @isTasty, 10, 1)
Run Code Online (Sandbox Code Playgroud)

但它只是不起作用.我该如何做到这一点?我在SQL Server 2005中.

t-sql sql-server raiseerror

4
推荐指数
1
解决办法
7026
查看次数

折叠T-SQL?

如果我有以下格式的数据

 id    subid      text
 1     1          Hello
 1     2          World
 1     3          !
 2     1          B
 2     2          B
 2     3          Q
Run Code Online (Sandbox Code Playgroud)

并希望以这种格式:

 id  fold
 1   HelloWorld!
 2   BBQ
Run Code Online (Sandbox Code Playgroud)

我怎么能在T-SQL中完成它?

t-sql sql-server

4
推荐指数
1
解决办法
1838
查看次数

Silverlight 4的WriteableBitmap*是否真的*以DRM的名义削弱了合法的跨域访问?

一年前的这个帖子中,它解释了当WriteableBitmap的任何部分来自外部域时 - 例如免费的图像服务器,它将阻止读取访问.

它进一步阐述了这是针对"DRM"的.我想有人在Silverlight中写一个电影开膛手有一个很大的威胁,其中包括来自另一个域的电影,然后重新捕获它...除了实现你可以重写血腥的xap,因为它从线下来然后它是同一个领域!但这既不是在这里也不是在那里.

无论如何,显然我正在尝试使用WritableBitmap导出用户当前设置的屏幕截图; 但我已经被这个跨域问题所阻止了.

在最新版本的Silverlight中,确实没有支持的方法吗?没有crossdomain.xml或clientaccesspolicy.xml?对于Silverlight而言,这不是一个瘫痪 - 一个巨大的"螺丝你",这会阻碍开发人员的半心半意安全障碍,但不会阻止攻击者?

编辑:这个问题等同于这里这个问题.

silverlight cross-domain writeablebitmap silverlight-4.0

4
推荐指数
1
解决办法
1914
查看次数

如何在java中为iphone创建"Hello World"应用程序?

我想用Java为iPhone创建一个基本的"Hello World"风格的应用程序 - 谁能告诉我怎么样?

java iphone

3
推荐指数
4
解决办法
9146
查看次数

使用enum/int覆盖函数

如果有一个具有函数的基类DeriveMe virtual void DoSomething(int)和一个继承DeriveMe的类,它具有一个函数void DoSomething(SomeEnum)DerivedThat ...... DerivedThat是否会覆盖基类DoSomething,因为枚举在C++的编译期间计算为整数?

我可以尝试通过使DoSomething纯虚拟并编译/运行它来查看它是否有效但这是我的第一个stackoverflow问题所以我宁愿问它.

c++ compiler-construction inheritance enums

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

写入c-string

我的代码段错误,我不知道为什么.

 1  #include <stdio.h>
 2
 3  void overwrite(char str[], char x) {
 4    int i;
 5    for (i = 0; str[i] != '\0'; i++)
 6      str[i] = x;
 7  }
 8
 9  int main(void) {
10    char *s = "abcde";
11    char x = 'X';
12    overwrite(s, x);
13    printf("%s\n", s);
14    return 0;
15  }
Run Code Online (Sandbox Code Playgroud)

gdb调试器告诉我,问题出在第6行,我想将一个char存储到c-string中(如果我使用左值指针解除引用,那就是同样的问题.)这就是他所说的:

(gdb) run
Starting program: /tmp/x/x 

Breakpoint 1, overwrite (str=0x8048500 "abcde", x=88 'X') at x.c:5
5         for (i = 0; str[i] != '\0'; i++) …
Run Code Online (Sandbox Code Playgroud)

c kr-c c-strings cstring segmentation-fault

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

如何从修订号中获取Mercurial变更集ID?

如果我使用hg grep我得到一个文件名和修订号.如何将这些信息转换为我可以在其他命令中使用的变更集标识符?

mercurial

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

VB.Net与C#"As New WebControl"的区别

我正在重构一些代码,其中一部分包括将它从VB.Net转移到C#.

旧代码声明了这样的成员:

Protected viewMode As New WebControl
Run Code Online (Sandbox Code Playgroud)

新的代码,我最终得到了工作,像这样:

protected WebControl _viewMode = new WebControl(HtmlTextWriterTag.Span);
Run Code Online (Sandbox Code Playgroud)

我可以假设New关键字意味着:调用构造函数!但VB.Net如何调用一个我无法用C#调用的构造函数(一个无参数的函数)?

.net c# vb.net asp.net clr

2
推荐指数
1
解决办法
1068
查看次数

如何优化Microsoft AJAX Toolkit?

这真是令人生气.我正在尝试优化一个非常大的站点,而我正在减少HTTP请求.微软没有合作.我包含以下ScriptResources.我会尝试抓住每个人的顶线来区分他们

  1. //名称:MicrosoftAjax.debug.js 53.5Kb
  2. //名称:MicrosoftAjaxWebForms.debug.js 14Kb
  3. AjaxControlToolkit.BoxSide = function(){11.4Kb
  4. /// Sys.UI.DomElement 958字节!
  5. // Sys.Timer 982字节!
  6. // IDropSource 6.5Kb
  7. AjaxControlToolkit.FloatingBehavior = function(element){2.2Kb
  8. AjaxControlToolkit.BehaviorBase = function(element){5.4Kb
  9. AjaxControlToolkit.DynamicPopulateBehavior = function(element){2.9Kb
  10. AjaxControlToolkit.BoxCorners = function(){3.6Kb
  11. AjaxControlToolkit.DropShadowBehavior = function(element){3.4Kb
  12. AjaxControlToolkit.ModalPopupBehavior = function(element){5.5Kb

来吧! 12血腥javascript包括!不到一个KILOBYTE!获得dang数据的时间有一半可能是花在寻求它上面!ARGHHH!

无论如何,正如你所看到的,我很生气.有什么方法可以推动它们并将它们结合起来吗?喜欢一个请求?

asp.net asp.net-ajax

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