问题列表 - 第17160页

如何在Perl中打印散列哈希值?

我有一个$map{k1}{k2}{k3}{k4}.

如何正确编写循环以打印所有值?以下不起作用.

for my $k1 (sort keys %tripletsCountMap) {
    for my $k2 (sort keys %$tripletsCountMap{k1}){
        for my $k3 (sort keys %$tripletsCountMap{k1}{k2}) {
            for my $k4 (sort keys %$tripletsCountMap{k1}{k3}{k3}){
                print "$k1 $k2 $k3 $k4\n";
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

perl

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

确定PHP中低/大写的最佳方法?

我有一个字符串,它是以下形式之一

ABC  // all caps: 
     // not necessarily "ABC", could be any combination of capital letters
Abc  // first letter capitalized, rest are lowercase
abc  // all lowercase
Run Code Online (Sandbox Code Playgroud)

我需要区分这三种情况中的哪一种......最好的方法是什么?似乎没有islower()isupper()功能; 我想我可以使用strtoupper()或制作一个strtolower().

php string

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

在同一解决方案中混合使用F#和C#的模式

我研究了很少的函数式语言,主要用于学术目的.然而,当我必须投影客户端 - 服务器应用程序时,我总是开始采用域驱动设计,严格来说是OOP.

用.Net框架编写的复杂解决方案可以使用多种语言获得优势,有时甚至超过范例.将C或C++与LUA或Python混合是一种常见的做法,有时嵌入prolog可能非常有趣.我从未试图将OOP和功能范例混合在一起.

F#是一种更新的功能和面向对象的语言,我看到在同一解决方案中将C#与F#库混合在技术上非常容易.但我想知道它是否有意义:我使用LINQ来满足我的许多功能要求.

何时以及如何,您认为将这两种语言混合在一起是一个好主意吗?我想知道是否存在一组试图这样做的模式.

你真的在C#解决方案中使用F#吗?

.net c# f# design-patterns

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

如何确定elisp中的操作系统?

如何以编程方式确定ELisp中运行的Emacs操作系统?

我想.emacs根据操作系统运行不同的代码.

emacs elisp

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

关于功能的Haskell问题

使用RWH,第3章问题5请求我创建了一个函数来测试是否存在paldindrome.

我写了这个,但它不起作用

pCheck :: (Eq a) => [a] -> Bool;
pCheck a = take n a == ( take n $ reverse a )
  where n = floor ( length a / 2 )
Run Code Online (Sandbox Code Playgroud)

我尝试运行它时遇到此错误:

No instance for (RealFrac Int)
  arising from a use of `floor' at len.hs:13:11-32
Possible fix: add an instance declaration for (RealFrac Int)
In the expression: floor (length a / 2)
In the definition of `n': n = floor (length a / 2)
In the definition …
Run Code Online (Sandbox Code Playgroud)

haskell inferred-type

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

拥有类变量或本地函数变量更好/更快?

好的我知道标题并没有完全解释这个问题.所以我正在编写一个执行大量计算的程序,我正在尝试对其进行优化,以便它不会运行得那么慢.我有一个函数,它是一个被调用大约500万次的类的成员.这是功能:

void PointCamera::GetRay(float x, float y, Ray& out)
{
    //Find difference between location on view plane and origin and normalize
    float vpPointx = pixelSizex * (x - 0.5f * (float)width);
    float vpPointy = pixelSizey * (((float)height - y) - 0.5f * height);

    //Transform ray to camera's direction
    out.d = u * vpPointx + v * vpPointy - w * lens_distance;
    out.d.Normalize();

    //Set origin to camera location
    out.o = loc;
}
Run Code Online (Sandbox Code Playgroud)

我想知道在类中声明变量vpPointx和vpPointy是否更好/更快,而不是每次调用函数时都声明它们.这是一个很好的优化还是效果不大?

一般来说,如果这里有任何可以优化的东西,请告诉我.

c++ optimization

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

分割2n个实数的序列,以便

我正在阅读算法设计手册,我坚持这个练习.


取一系列2n个实数作为输入.设计一个O(n log n)算法,将数字划分为n对,其特性是分区最小化一对的最大总和.例如,假设我们得到了数字(1,3,5,9).可能的分区是((1,3),(5,9)),((1,5),(3,9))和((1,9),(3,5)).这些分区的对和是(4,14),(6,12)和(10,8).因此,第三个分区的最大总和为10,这是三个分区的最小值.


我从一些例子中猜到,解决方案看起来像这样:

# in pseudo ruby code
a = [1,3,5,9]
pairs = []
while !a.empty?
    pairs << [a.shift, a.pop]  # [a.first, a.last]
end
pairs
Run Code Online (Sandbox Code Playgroud)

但如何证明呢?

algorithm

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

Malloc指向通过引用指向结构数组的指针

下面的代码编译,但立即崩溃的原因显而易见,但不是我.我似乎无法做到正确,任何人都可以告诉我如何解决这个问题.

*array_ref[2] = array[0];
*array_ref[3] = array[1];
Run Code Online (Sandbox Code Playgroud)

它每次都在那个部分崩溃.

typedef struct test {
    char *name;
    char *last_name;
} person;



int setName(person ** array, person ***array_ref) {

    *array = malloc (5 * sizeof(person));
    *array_ref= malloc(5 * sizeof(person*));

   array[0]->name = strdup("Bob");
   array[1]->name = strdup("Joseph");
   array[0]->last_name = strdup("Robert");
   array[1]->last_name = strdup("Clark");


*array_ref[2] = array[0];
*array_ref[3] = array[1];


    return 1;
}



int main()
{
    person *array;
    person **array_r;

   setName(&array,&array_r);

    printf("First name is %s %s\n", array[0].name, array[0].last_name);
    printf("Second name is %s %s\n", array_r[3]->name, array_r[3]->last_name);

     while(1) {} …
Run Code Online (Sandbox Code Playgroud)

c arrays malloc pointers data-structures

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

仅复制ant中不存在的文件

我正在将我的项目部署到要使用java Web Start部署的Web服务器.但是,Web Start使用修改日期来确定是否再次下载资源(默认情况下).

我想要的是一种只部署那些尚不存在的(jar)文件的方法.这可以通过在我的所有罐子上都有构建版本号来实现,因此具有相同名称的2个罐子具有相同的内容.

笔记:

  • 由于从svn或常春藤下载,jar修改日期将始终在构建中更新(这就是我遇到此问题的原因)
  • 有一种方法可以使用sun的下载servlet,更多的文件等来实现这一点,但我很懒,不需要它,这个(更简单)的解决方案从长远来看会更加强大

java ant copy java-web-start

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

将List <DerivedClass>转换为List <BaseClass>

虽然我们可以从基类/接口继承,但为什么我们不能声明List<> 使用相同的类/接口?

interface A
{ }

class B : A
{ }

class C : B
{ }

class Test
{
    static void Main(string[] args)
    {
        A a = new C(); // OK
        List<A> listOfA = new List<C>(); // compiler Error
    }
}
Run Code Online (Sandbox Code Playgroud)

有办法吗?

c# collections inheritance list covariance

162
推荐指数
7
解决办法
10万
查看次数