小编Tan*_*nay的帖子

遍历树以查找节点

我正在搜索树以查找传递的值.不幸的是,它不起作用.我开始用打印机调试它,奇怪的是它实际上找到了值,但是跳过了return语句.

    /**
  * Returns the node with the passed value
  */
 private TreeNode searchNodeBeingDeleted(Comparable c, TreeNode node)
 {  
  if(node == null) 
  {
   return null;
  }

  if(c.equals((Comparable)node.getValue()))
  {
   System.out.println("Here");
   return node;
  }
  else
  {
   if(node.getLeft() != null)
   {
    System.out.println("left");
    searchNodeBeingDeleted(c, node.getLeft());
   }
   if(node.getRight() != null)
   {
    System.out.println("right");
    searchNodeBeingDeleted(c, node.getRight());
   }
  }
  return null; //i think this gives me my null pointer at bottom
 }
Run Code Online (Sandbox Code Playgroud)

它打印出如下结果:

left
left
right
right
Here
right
left
right
left
right
Exception in thread "main" java.lang.NullPointerException
at …
Run Code Online (Sandbox Code Playgroud)

java algorithm recursion binary-tree

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

CUDA:分散沟通模式

我正在从Udacity的并行编程课程中学习CUDA .在测验中,他们有一个排序预先排序的变量(玩家的身高)的问题.因为,它是输入和输出数组之间的一对一对应,它不应该是一个Map通信模式而不是一个Scatter在此输入图像描述

parallel-processing cuda

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

Switch语句:C v/s中的逻辑是否不同.其他语言如Java?

我正在阅读有关C编程的教程.它说:

switch语句实际上完全不同(来自其他语言),实际上是一个"跳转表".您可以只放置导致整数的表达式,而不是随机布尔表达式,这些整数用于计算从开关顶部到匹配该值的部分的跳转.这里有一些代码我们将分解以理解"跳转表"的概念.

但是,需要比较switch语句的情况,直到找到匹配项(否则返回default).

它与多个if-else语句有什么不同呢?或者,它只是一个语法糖?我错过了一些重要的东西吗?

c c++ java if-statement switch-statement

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

Apache Kafka:镜像与复制

Mirroring在Kafka集群之间复制数据,而在Kafka集群Replication内复制节点。

Replication如果Mirroring已经设置,是否有任何特定用途?

replication distributed-computing mirroring apache-kafka

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

Python Falcon Framework:可选的URI参数

有没有办法在Falcon Web框架中定义可选路径参数?目前,我正在声明修改相同资源的单独路由.

app.add_route('/users/', users_api_post)
app.add_route('/users/{id}', users_api_put)
Run Code Online (Sandbox Code Playgroud)

PS:关于Flask框架的SO 也存在类似的问题.

python falconframework

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

将命令行输出导出到Python中的文件

这是我在Python中执行jar文件的代码:

import os
os.system("java -jar xyz.jar")
Run Code Online (Sandbox Code Playgroud)

我可以在终端上看到输出,但想将其存储在文件中.我怎样才能做到这一点?

python

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

将字符串列表转换为数字列表Python

我在Python 3中使用正则表达式来获取值列表:

lst = ['1.1' , '2.2' , '3.3']
Run Code Online (Sandbox Code Playgroud)

相反,我想要一个数字列表如下:

lst = [1.1 , 2.2 , 3.3]
Run Code Online (Sandbox Code Playgroud)

python regex list

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

在Prolog中创建一个N×N矩阵(使用列表?)

我希望在SWI-Prolog中有一个大小为N x N的矩阵.一个可能的解决方案是创建一个N个大小为N的列表,但现在确定如何在Prolog中编写代码.

list prolog

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

最大化SWI-Prolog中变量值之间的距离(clpfd)

我想最大化两个变量之间的差异:

:- use_module(library(clpfd)).
maximize(X) :- 
    X = [A,B],
    X ins 1..5,
    % I want to write a constraint to have maximum difference between A and B.
Run Code Online (Sandbox Code Playgroud)

prolog constraint-programming swi-prolog clpfd

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

MongoEngine:EmbeddedDocument v/s.ReferenceField

EmbeddedDocument将允许将文档存储在另一个文档中,同时RefereneField只存储它的引用.但是,他们实现了类似的目标.他们有特定的用例吗?

PS:已经有一个关于SO 的问题,但没有好的答案.

python mongodb mongoengine

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

在java中打印数组的通用方法

我正在尝试编写一个通用方法printAll,它打印一个整数或字符数组.这是代码:

public static void main(String[] args) {
    char cArray[] = {'a','b','c','d'};
    int iArray[] = {1,2,3,4};
    printAll(iArray);    // Error at this line--refer below the code

}

public static <T> void printAll(T[] t){
   for(T x:t) {
        System.out.println(x);
    }
Run Code Online (Sandbox Code Playgroud)

}

错误:线程"main"中的异常java.lang.RuntimeException:无法编译的源代码 - 错误的树类型:<.any>

java generics

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

在Prolog中创建列表列表

我想要一个带有约束的列表列表,这是我用SWI-Prolog编写的代码:

List = [L1,L2,L3],
L1 = [X1, X2], L1 ins 1..4,
L2 = [Y1, Y2], L2 ins 1..4,
L3 = [Z1, Z2], L3 ins 1..4.
Run Code Online (Sandbox Code Playgroud)

但是,它给了ERROR:Type Error: integer expected.

list prolog clpfd

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