【Java 8:为什么我不能将这个二进制字符串解析成一个长整数?】教程文章相关的互联网学习教程文章

java-如何使用二进制搜索从排序的TreeSet中检索元素?【代码】

我试图将多个排序列表合并到一个TreeSet中.然后,我考虑在该TreeSet上应用Binary Search算法,以O(log n)时间复杂度来检索元素. 下面是我的代码,在其中我以一种方法传递列表列表,并将它们组合到TreeSet中,以避免重复…输入中的所有列表均已排序-private TreeSet<Integer> tree = new TreeSet<Integer>();public void mergeMultipleLists(final List<List<Integer>> inputs) {tree = new TreeSet<Integer>();for (List<Integer> input...

java-对按降序排序的int数组使用二进制搜索【代码】

import java.util.*; import java.io.*; import java.util.Arrays; import java.util.Collections; import org.apache.commons.lang3.ArrayUtils; @SuppressWarnings("unused") public class Tester {public static void main(String args[]){int i[] = {-7, 15, 21, 22, 43, 49, 51, 67, 81, 84, 89, 95, 97};ArrayUtils.reverse(i);System.out.println(binarySearch(i, 22));System.out.println(binarySearch(i, 89));System.out...

java-如何在二进制搜索树中正确添加节点?【代码】

这是我的代码public boolean insertWord(String key, String meaning) {if((root == null) ){root = new TreeNode();root.key = key;root.meaning = meaning;}else{TreeNode subroot = root;if(subroot.key.compareTo(key) == 0){return false;}else if(key.compareTo(subroot.key) < 0){if(subroot.left != null){subroot = root.left;return insertWord(key, meaning);}else{subroot.left = new TreeNode();subroot.left.key = k...

java-如何从平衡的二进制搜索树中按升序打印整数?【代码】

该程序从数组整数创建平衡的二进制搜索树,然后按顺序打印值(X.left,X,X.right).任何改进计划的建议均表示赞赏. 值得注意的是,还有其他几种遍历BST的方法.如 –预购:X,X.left,X.right后订购:X.left,X.right,X 注意#我最终在该程序用户的帮助下解决了该问题.它需要在createMinimalBST方法内更改一些条件.// we need to stop recursion there as one element exist if (start == mid-1) {}// we need to stop recursion there as on...

java-最好的方法是什么?二进制搜索树:仅当if语句时使用的最低共同祖先【代码】

我已经用if语句解决了这个问题.可以通过其他各种方式解决它.我刚刚开始编程,所以我无法考虑使用任何其他数据结构来解决此问题. 我的问题 :如何在各种方式中选择最佳方法?与我的直接幼稚方法相比,这种最佳方法的优点/缺点是什么? 一般而言,不仅针对此问题.如何解决任何问题? 问题陈述 您将获得指向二进制搜索树的根以及两个值v1和v2的指针.您需要在二进制搜索树中返回v1和v2的最低公共祖先(LCA).您只需要完成功能. 我的代码:st...

java-使用比较器进行二进制搜索【代码】

我正在努力使这个工作.我需要编写一个可与??binarySearch算法一起使用的仿函数,以查找长度在12到15个单位之间的梯子. 这是二进制搜索:public static <AnyType> int binarySearch(GenericSimpleArrayList<AnyType> a, AnyType x, Comparator<? super AnyType> cmp) {int low = 0;int high = a.size() - 1;int mid;while (low <= high) {mid = (low + high) / 2;if (cmp.compare(a.get(mid), x) < 0) {low = mid + 1;} else if (cmp...

java-了解二进制搜索错误【代码】

我试图理解字节数组的二进制搜索错误,我理解了计算中间索引时发生溢出的概念.但是,当我使用字节数组模拟相同的行为时,如下所示:public byte binarySearch(byte[] arr, byte low, byte high, byte value){if(low>high){return -1;}/* Line 1 */ byte overflow_mid = (byte) (((byte) (low + high))/2); // This line giving overflow behaviour/* Line 2 */ byte mid = (byte) ((low + high)/2); // however this line does...

java-二进制搜索树实例化【代码】

我已经通过使用树接口和递归创建了二进制搜索树(我知道使用Node类,我可以实现相同的方法)提供了添加和检查元素是否在二进制搜索树中的方法. 我面临的问题是实例化和显示BST的元素. 这是我的代码 树接口:package bst;public interface Tree<D extends Comparable>{public boolean isempty();public int cardinality();public boolean member(D elt);public NonEmptyBst<D> add(D elt);}EmptyBst类别:package bst;public class Emp...

Java输出小端二进制文件【代码】

最近和C语言的系统有交互,需要给对方传输二进制文件,但C语言的文件默认是小端,而Java作为网络应用程序,默认是大端 因此需要在写入二进制文件的时候修改一下写入字节的顺序。 先看看普通写入 FileOutputStream fos = new FileOutputStream("D:/temp/test.txt"); BufferedOutputStream bos=new BufferedOutputStream(fos); DataOutputStream dos=new DataOutputStream(bos);dos.writeShort(66);dos.close(); bos.close(); fos.cl...

我的基本二进制搜索方法不适用于Java int数组中的一个特定值【代码】

我是Java初学者,这是一个小程序,用于在int数组中输出搜索到的int值的索引.这是代码public static void main(String[] args) {int rank =findNumber(7, new int[]{2, 4, 7, 10, 11, 45, 50, 59, 60, 66, 69, 70, 79});System.out.println("Your number's index is " + rank);}public static int findNumber(int key, int... numbers) {int low = 0;int high = numbers.length - 1;int mid = (low + high) / 2;int rank = 0;for (int...

LeetCode 1253. 重构 2 行二进制矩阵 - Java - 统计

题目链接:https://leetcode-cn.com/contest/weekly-contest-162/problems/reconstruct-a-2-row-binary-matrix/给你一个 2 行 n 列的二进制数组: 矩阵是一个二进制矩阵,这意味着矩阵中的每个元素不是 0 就是 1。 第 0 行的元素之和为 upper。 第 1 行的元素之和为 lower。 第 i 列(从 0 开始编号)的元素之和为 colsum[i],colsum 是一个长度为 n 的整数数组。 你需要利用 upper,lower 和 colsum 来重构这个矩阵,并以二维整数...

java-如何在tcp端口上使用二进制通信协议发送数据包【代码】

我正在开发一种可以通过传感器测量一些读数的设备.设备由Android应用操作.我必须从TCP层读取数据.这是在TCP上发送数据的代码 TcpClient.javaimport android.util.Log;import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.InetAddress; import java.net.Socket;/** * Created by shahbaz on 25/4/1...

使用递归Java进行二进制搜索【代码】

我正在尝试编写一种方法,在该方法中,我只能使用二进制搜索和递归来找到所需数字的索引.这是我写的方法:public static int binSearch_r (int[] data, int value, int from, int to){if (from <= to){int middle = (from+to)/2;if (data[middle] > value){binSearch_r(data, value, from, middle - 1);}else if (data[middle] < value){binSearch_r(data, value, middle+1, to);}else{return middle;}}return -1;}数据是输入的原始数...

在Java卡中将整数的二进制表示形式转换为ASCII【代码】

我想将以二进制格式表示的整数的任意长度转换为ASCII形式. 一个示例是整数33023,十六进制字节为0x80ff.我想将0x80ff表示为33023的ASCII格式,其十六进制表示形式为0x3333303233. 我正在无法识别String类型的Java Card环境中工作,因此我将不得不通过二进制操作手动进行转换. 解决此问题的最有效方法是什么,因为16位智能卡上的Java Card环境非常受限.解决方法:这比您想象的要棘手,因为它需要基数转换,并且基数转换使用大整数算法在整数...

java中byte数组,二进制binary安装chunk大小读取数据【代码】

int CHUNKED_SIZE = 8000; public void recognizeText(byte[] data) throws InterruptedException, IOException {init();byte[] buffer = new byte[CHUNKED_SIZE];ByteArrayInputStream stream = new ByteArrayInputStream(data);while (stream.read(buffer) != -1){send(buffer);}send("EOS");}String fileName = "F:\\aaa.wav"; RandomAccessFile raf = new RandomAccessFile(fileName,"r"); raf.skipBytes(44); byte [] audioDa...