问题列表 - 第19699页

通配符字符串匹配

什么是最有效的通配符字符串匹配算法?我只询问一个想法,没有必要提供实际的代码.

我认为这样的算法可以使用排序的后缀数组构建,这可以产生O(log(n))的性能.

我对么?

编辑:

我的意思是模式"A*B","*sip*"或者"A?B"星形意味着任意数量的符号,而问号意味着单个符号.

algorithm

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

Android编译器:无法解析符号字符串

当我尝试将strServerIP添加到类Server时,我得到一个:
无法解析符号字符串
编译器错误.

为什么?

package com.example;


public class Server
{
    //public static java.lang.string SERVERIP;
    public static android.R.string SERVERIP;
    public static java.lang.string strServerIP = "monster.idsoftware.com";
    public static string strServerIP = "monster.idsoftware.com";
    public static int SERVERPORT = 27950;
    public static int PROTOCOL = 68;
}
Run Code Online (Sandbox Code Playgroud)

java sockets android udp intellij-idea

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

YUI - 优点和缺点

我即将开始一个新项目并计划使用YUI和我的JS和CSS框架,原因如下:

  1. 具有三态复选框的Treeview(似乎是我能找到的最佳实现)
  2. Calandar(见过其他人,但是因为#1在YUI上,我很高兴它也有日历)
  3. CSS框架(将使用960,但不妨100%雅虎)

我打算只使用1个JS框架.

有没有人看到我的决定有任何问题?

javascript css yui frameworks

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

System.DllNotFoundException:无法在窗口2003上加载DLL

我在我的c#项目中使用c ++ dll,它在我的窗口xp机器上运行正常,但是当我在window 2003服务器(x64)上复制我的调试项目时,我收到下面的错误,任何人都可以告诉我这是什么问题,并且我该怎么办呢.

谢谢

"System.DllNotFoundException:无法加载DLL'lib.dll':此应用程序无法启动,因为应用程序配置不正确.重新安装应用程序可能会解决此问题"

c# dll dllnotfoundexception

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

C#绘图,奇怪的行为

以下代码相当简单 - 它用随机选择的像素填充设计表面 - 没什么特别的(暂时忽略第二种方法中的XXXXXXX).

private void PaintBackground()
{
    Random rnd = new Random();

    Bitmap b = new Bitmap(this.Width, this.Height);
    for (int vertical = 0; vertical < this.Height; vertical++)
    {
        for (int horizontal = 0; horizontal < this.Width; horizontal++)
        {
            Color randomColour = GetRandomColor(rnd);
            b.SetPixel(horizontal, vertical, randomColour);
        }
    }

    Graphics g = this.CreateGraphics();
    g.DrawImage(b, new Point(0, 0));
}

public Color GetRandomColor(Random rnd)
{
    XXXXXXXXXXXXXXXX

    byte r = Convert.ToByte(rnd.Next(0, 255));
    byte g = Convert.ToByte(rnd.Next(0, 255));
    byte b = Convert.ToByte(rnd.Next(0, 255));

    return …
Run Code Online (Sandbox Code Playgroud)

c# graphics drawing brush bitmap

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

Windows上下文菜单外壳图标

我使用注册表和键创建了一个新的Windows shell上下文菜单项

HKLM\Software\Classes\Folder\shell\appname
HKLM\Software\Classes\Folder\shell\appname\command
Run Code Online (Sandbox Code Playgroud)

现在我想为这个命令添加一个图标.我怎么做的?

windows registry windows-explorer

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

皮条客我的Perl代码

我是一位经验丰富的开发人员,但不是Perl.我通常学习Perl来破解脚本,然后我再次忘记它直到下一次.因此,我正在寻找专业人士的建议.

这一次,我正在构建一系列数据分析脚本.大致简化,程序结构如下:

01 my $config_var = 999;

03 my $result_var = 0;

05 foreach my $file (@files) {
06   open(my $fh, $file);
07   while (<$fh>) {
08     &analyzeLine($_);
09   }
10 }

12 print "$result_var\n";

14 sub analyzeLine ($) {
15   my $line = shift(@_);
16   $result_var = $result_var + calculatedStuff;
17 }
Run Code Online (Sandbox Code Playgroud)

在现实生活中,有大约六个不同的config_vars和result_vars.

这些脚本主要区别于分配给config_vars 的值.主循环在每种情况下analyzeLine()都是相同的,并且将大致相同但可能有一些小的变化.

我可以通过制作此代码的N份副本来实现我的目的,并且在这里和那里进行小的改动; 但这严重违反了各种良好设计规则.理想情况下,我想编写一系列脚本,其中只包含一组config var初始化,然后是

do theCommonStuff;
Run Code Online (Sandbox Code Playgroud)

请注意,config_var(和它的兄弟姐妹)必须可用于公共代码,必须result_var和它的外观相似,在其analyzeLine()上进行一些计算.

我应该将"常用"代码打包到模块中吗?创建一个类?使用全局变量?

虽然不完全是代码高尔夫,但我正在寻找一个简单,紧凑的解决方案,这将允许我干,只为差异编写代码.我想我宁愿不从包含所有配置的巨大表中驱动代码,当然也不会使它适应使用数据库.

期待您的建议,谢谢!


更新 …

perl refactoring coding-style

4
推荐指数
2
解决办法
363
查看次数

Linq在1个循环中的2个阵列?

是否有可能提高这些linq请求的效率?我使用两个不同的循环...你能帮我优化这段代码吗?

        double[] x = { 2, 3, 1, 5, 7, 2, 3 };
        double[] y = { 1, 2, 3, 4, 5, 6, 7 };            
        IEnumerable<int> range = Enumerable.Range(0, x.Length);
        double[] y_sorted = (from n in range orderby x[n] select y[n]).ToArray();
        double[] x_sorted = (from n in range orderby x[n] select x[n]).ToArray();
Run Code Online (Sandbox Code Playgroud)

python中的这段代码就像你喜欢的那样:

        x_index = argsort(x)
        x_sorted = [x[i] for i in x_index]
        y_sorted = [y[i] for i in x_index]
Run Code Online (Sandbox Code Playgroud)

你会注意到,在这个python代码中,我只使用一种.这不是c#代码的情况.

我们应该到最后:

        x_sorted = { 1, 2, 2, 3, 3, …
Run Code Online (Sandbox Code Playgroud)

c# linq

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

顺序strpos()比一个preg_match的函数更快?

我需要测试是否有任何字符串'hello','i am','dumb'存在于名为$ ohreally的较长字符串中,如果其中一个存在,我的测试结束了,并且我知道这两个字符串都没有如果其中一个人有其他人将会发生.

在这些情况下,我要求您提供最有效的搜索方式,

strpos()3次这样?

if (strpos ($ohreally, 'hello')){return false;}  
   else if (strpos ($ohreally, 'i am')){return false;}  
   else if (strpos ($ohreally, 'dumb')){return false;}  
   else {return true;}
Run Code Online (Sandbox Code Playgroud)

还是一个preg_match?

if (preg_match('hello'||'i am'||'dumb', $ohreally)) {return false}   
   else {return true};
Run Code Online (Sandbox Code Playgroud)

我知道preg_match代码是错误的,如果有人能提供正确的版本,我真的很感激.

谢谢!


回答

请阅读cletus所说的内容和测试middaparka吼叫.我还做了一个mirco时间测试,在各种字符串,长短.有了这些结果

如果,您知道字符串值发生的概率从最可能到最小可能.(我没有注意到在命令正则表达式本身时,即在/hello|i am|dumb/或之间存在明显的不同/i am|dumb|hello/.

另一方面,在连续的strpos中,概率完全不同.例如,如果"你好"发生率为90%,"我是"7%,"哑巴"发生率为3%.您想组织代码以先检查'hello'并尽快退出该功能.

我的microtime测试显示了这一点.

对于在第一,第二和第三次strpos()执行中分别找到针的干草堆A,B和C,时间如下,

strpos:
A:0.00450秒// 1个strpos()
B:0.00911秒// 2个strpos()
C:0.00833秒// 3个strpos()
C:0.01180秒// 4个strpos()添加了一个额外的

对于preg_match:
A:0.01919秒// 1 preg_match()
B:0.02252秒// 1 preg_match()
C:0.01060秒// 1 preg_match()

正如数字显示的那样,strpos在4rth执行时速度更快,因此我将使用它而不是因为我只有3个子命令来检查:)

php string optimization performance search

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

URL操作

我想对URL进行一些操作.

需要在已创建的URL中添加子域,如下所示

输入

String inputURL = "http://www.myhost.com";
String subdomain = "newlocation";
Run Code Online (Sandbox Code Playgroud)

产量

String output = "http://www.newlocation.myhost.com";
Run Code Online (Sandbox Code Playgroud)

我在想是否有任何现有的实用工具类可以为我做这件事.专家可以有话要说.

谢谢你的帮助 !

java

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