我正在使用java构建期权估值(二叉树)。我的二叉树有1000步的正常顺序代码,只需要0.1秒。但是,当我尝试使用并行来运行它时,大约需要65秒。任何建议和意见都将不胜感激..
Binomial Thread is my class which does the calultion
ThreadPoolExecutor threadExecutor = new ThreadPoolExecutor(10000, 10000, 500,
TimeUnit.MILLISECONDS, new ArrayBlockingQueue<Runnable>(10),
以前我问过,当我只得到后序遍历时,如何获得树的前序。然而,现在我很好奇,当只给出post顺序遍历时,如何构建严格的二叉树(严格的二叉树意味着一个节点要么有两个孩子,要么没有孩子)。我正在处理的一些示例数据:
7 8 2 // 8,2 are dimensions stored in the node, likewise for other nodes)
6 4 8
3 1 5
A
B
我知道树应该是什么样子的:
B
/ \
7 A
/ \
有点像计算机科学的新手。
我有Ruby中二叉树的基本知识:
class Node
attr_accessor :left, :right, :value
def initialize(value)
@value = value
end
end
如果我手动构造它,例如,如果我希望tom是ben的子节点,这就很好了。
ben = Node.new('Ben')
tom = Node.new('Tom')
ben.left = tom
我需要解决的挑战之一是如何为输入的父/子对构建树。下面是一个输入字符串示例:
peter tom
peter m
我试图构建一个二叉树形式,一个csv-文件,然后赋予另一个函数这个二叉树,但是Python将它形成为某种对象,我无法用我的知识来处理它。打印的输出是:<class 'csv.DictReader'> <csv.DictReader对象在0x00000172BBB1CCD0>上
def load_cities():
"""
Read CSV-Data from File into a Dictonary.
"""
city_dict = {}
with open(CURRENT
我玩了一点二叉树,构建了一个菜单,当我点击创建树时,用户可以选择是构建二叉树,向他构建的二叉树插入一个值,还是删除它。树被创建,然后菜单再次出现,现在我想在这棵树中放一个数字,但那个变量没有设置在案例中,每个案例应该设置它的变量吗?或者您可以使用全局变量?
这是我的menu类的代码。
import java.util.Comparator;
import java.util.Scanner;
public class TreeMenu {
public static void main(String[] args) {
while(true ){
Sy