ソート済み配列をJavaのBSTプログラムに並列化しようとしています。私の関数はDivide and Conquerの仕方で実行されるので、私はそれが並列化可能だと信じていますが、実装には固執しています。あなたがスレッドをここに適用する方法を教えてもらえると非常に役に立ちます。並列化ソート済み配列をバイナリ検索ツリー関数に変換する
ありがとうございます!
// Definition for a binary tree node.
public class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int x) { val = x; }
}
public class Solution {
public TreeNode sortedArrayToBST(int[] nums) {
if (nums == null) {
return null;
}
return sortedArrayToBST(nums, 0, nums.length - 1);
}
private TreeNode sortedArrayToBST(int[] nums, int start, int end) {
if (start > end) {
return null;
}
int mid = start + (end - start)/2;
TreeNode node = new TreeNode(nums[mid]);
node.left = sortedArrayToBST(nums, start, mid - 1);
node.right = sortedArrayToBST(nums, mid + 1, end);
return node;
}
}
1つのオプションは、[ 'ForkJoinPool'](https://docs.oracleを使用することです。 com/javase/7/docs/api/java/util/concurrent/ForkJoinPool.html)。 – Andreas
@アンドレアスクール! Divideのように見えますが、ConquerはForkJoinPoolの完璧な使用例です。 – gyoho