- 浏览: 89079 次
- 性别:
- 来自: 河北
文章分类
最新评论
/**引用网络文档*/
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Run
{
private static int radix = 307;
public static void main(String[] args) throws Exception
{
Run run = new Run();
int [] result = run.Power(radix);
logger.debug("++++ Caculate Result: +++++");
for(int i = result.length - 1; i >= 0; i--){
System.out.print(result[i]);
if(i % 50 ==0){
System.out.print(" ");
}
}
}
public static int input() {
String inline = null;
try {
BufferedReader inStream = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Please enter a power number for the radix 2: ");
inline = inStream.readLine();
int number = Integer.parseInt(inline);
return number;
} catch (NumberFormatException ex) {
System.out.println("Invalid!!");
return 0;
} catch (IOException e) {
System.out.println("Error!! ");
return 0;
}
}
int[] Power(int radix) throws Exception {
int[] result;
int n=input();
int size = (int) (n * Math.log10(radix)) + 1;
result = new int[size];
result[0] = 1;
if(n<0){
System.out.println("Sorry! Please enter a positive number!");
}
if (n == 0) {
result = new int[1];
result[0] = 1;
return result;
}
// get the result
for (int i = 0; i < n; i++) {
GetResult(result, radix);
}
return result;
}
void GetResult(int[] result, int n) {
int length = 0;
for (int i = result.length - 1; i >= 0; i--) {
if (result[i] > 0) {
length = i + 1; //get the highest bit
break;
}
}
for (int i = length - 1; i >= 0; i--) {
// calculate from the highest bit to the lowest
int temp = result[i] * n;
// get a carry
if (temp >= 10) {
// put a carry to a higher bit
result[i + 1] += temp / 10;
// check this bit weather need carry or not
CheckCarry(result, i + 1);
temp %= 10;
}
result[i] = temp;
}
}
void CheckCarry(int[] m, int index) {
if (m[index] >= 10) {
// put a carry to a higher bit
m[index + 1] += m[index] / 10;
// set the current bit
m[index] %= 10;
// check the next bit weather need carry or not
CheckCarry(m, index + 1);
}
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Run
{
private static int radix = 307;
public static void main(String[] args) throws Exception
{
Run run = new Run();
int [] result = run.Power(radix);
logger.debug("++++ Caculate Result: +++++");
for(int i = result.length - 1; i >= 0; i--){
System.out.print(result[i]);
if(i % 50 ==0){
System.out.print(" ");
}
}
}
public static int input() {
String inline = null;
try {
BufferedReader inStream = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Please enter a power number for the radix 2: ");
inline = inStream.readLine();
int number = Integer.parseInt(inline);
return number;
} catch (NumberFormatException ex) {
System.out.println("Invalid!!");
return 0;
} catch (IOException e) {
System.out.println("Error!! ");
return 0;
}
}
int[] Power(int radix) throws Exception {
int[] result;
int n=input();
int size = (int) (n * Math.log10(radix)) + 1;
result = new int[size];
result[0] = 1;
if(n<0){
System.out.println("Sorry! Please enter a positive number!");
}
if (n == 0) {
result = new int[1];
result[0] = 1;
return result;
}
// get the result
for (int i = 0; i < n; i++) {
GetResult(result, radix);
}
return result;
}
void GetResult(int[] result, int n) {
int length = 0;
for (int i = result.length - 1; i >= 0; i--) {
if (result[i] > 0) {
length = i + 1; //get the highest bit
break;
}
}
for (int i = length - 1; i >= 0; i--) {
// calculate from the highest bit to the lowest
int temp = result[i] * n;
// get a carry
if (temp >= 10) {
// put a carry to a higher bit
result[i + 1] += temp / 10;
// check this bit weather need carry or not
CheckCarry(result, i + 1);
temp %= 10;
}
result[i] = temp;
}
}
void CheckCarry(int[] m, int index) {
if (m[index] >= 10) {
// put a carry to a higher bit
m[index + 1] += m[index] / 10;
// set the current bit
m[index] %= 10;
// check the next bit weather need carry or not
CheckCarry(m, index + 1);
}
}
}
发表评论
-
cas-server 4.0.0 maven 编译
2015-06-17 14:21 5322最近需要用到cas sso单点登录,所以需要调研下cas服务, ... -
日常服务异常解决问题
2015-03-31 10:24 10591问题: Tomacat7启动报错-org.apache.ca ... -
Java 正则表达式
2014-07-08 20:15 4201:验证是否为URL且后缀为.jpeg等图片格式的地址: Pa ... -
ibatis like 防止sql注入
2014-06-25 16:18 708ibatis like查询防sql注入 为了防止SQL注入,i ... -
flex集成环境配置
2014-02-27 16:35 7251、登陆adobe官网,下载 Flash builder(我下 ... -
myeclipse 10 破解遇到问题解决方案
2014-01-09 17:48 551点击run运行时,无法启动破解程序 1、编辑run内容,将 * ... -
centos memcached
2013-09-03 23:24 662CentOS 安装配置memcached (转) 1、先下载m ... -
java服务端http请求post 发送数据量限制
2013-03-25 11:22 5176使用HttpClient的post提交数据遇到的有关问题 使 ... -
httpclient访问https
2012-09-14 16:00 4019package com.jadyer.util; ... -
tomcat6中配置SSL双向认证
2012-09-14 16:32 857原文出自:http://htallen.ite ... -
详解 Nginx + Tomcat HTTPS/SSL 配置
2012-09-14 15:21 1023转载:http://my.oschina.net/zhlmmc ... -
tomcat配置http和https访问
2012-09-14 14:52 1756设置使tomcat既支持http访问,也支持https访问。需 ... -
https访问-不需要导入证书的方式
2012-09-14 14:12 1626httpclient 通过https访问网站的方式有两种,一种 ... -
https访问设置
2012-09-14 13:47 2import java.io.IOException; imp ... -
spring mvc整合freemarker基于注解方式
2012-05-22 09:54 974<?xml version="1.0" ...
相关推荐
在Java编程中,字符串数组和大数据运算经常被用于复杂的数据处理和计算场景。在这个特定的示例中,我们要实现一个程序来计算表达式 (1+2)(1+2^2)*(1+2^3)*...*(1+2^100) 的结果。这个表达式涉及到指数运算和乘法,这...
4个基本方法实现; myPower为次方运算; myMultiply为乘法运算; myPlus为加法运算; mySubtraction为减法运算;
总结来说,了解和熟练掌握包装类、System类、Math类、Arrays类以及大数据运算的使用是成为专业Java开发者的必要条件。通过深入学习和实践这些知识,开发者能够编写出更加高效、可靠的代码,以应对各种复杂的编程挑战...
这个类属于 `java.math` 包,专门用于进行任意精度的整数运算,不受 Java 原生数据类型限制。在这个练习中,我们将深入探讨 `BigInteger` 类的一些核心方法,并通过一个具体的示例来展示如何使用它们。 首先,我们...
【大数据基本语法】和...以上内容是Java基础和大数据学习中的一些关键知识点,涵盖了数据处理、集合操作、数学运算、SQL查询、字符串操作、逻辑判断以及面向对象编程等多个方面,对于面试和实际开发都非常有帮助。
8. **高效计算2的8次方**:在Java中,可以使用位移运算`来快速计算2乘以8,即`2 ,因为左移3位相当于乘以2的3次方,即8。 9. **设计亿级计算器**:设计一个能处理百亿级别的计算器要考虑效率和精度。可以使用大数据...
3. **40003**: 此题要求实现一个幂运算函数,即计算`x`的`n`次方。这里使用了`nextDouble()`读取双精度浮点数,然后在循环中进行指数运算。需要注意的是,Java的浮点数运算可能存在精度损失,可以使用`Math.pow()`...
10. 数值的整数次方:需要考虑大数运算以及如何优化算法性能。 11. 打印1到最大的n位数:需要处理大数的存储和输出问题,以及避免整数溢出。 12. O(1)时间删除链表节点:这是一个对链表操作的深入理解,需要巧妙地...
之后,数组的长度会被扩充到大于等于输入数组长度的最小2的幂次方的长度。 ```java public FFT(int[] x) throws Exception { // ...(代码省略) for(int i = 0; i ; i++) xConv[i] = x[i]; for(int i = n; i ;...
例如,可以用一个数组存储2的100次方,该值有30个十进制位,远远超过了普通整型所能表示的范围。 2. **进位机制**:在加法运算中,当某一位的和超过其位宽时,需要向上一位进位。对于大整数,这意味着需要遍历整个...
从给定的文件信息中,我们可以提炼出一系列与JavaSE编程相关的知识点,这些知识点涵盖了变量的概念、进制转换、数据类型及其转换、以及Java中的基本运算。以下是对这些知识点的详细解析: ### Java变量 变量在Java...
`BigDecimal`是Java中用于进行高精度和任意精度的十进制运算的类,它可以避免浮点数计算时可能出现的精度问题。在示例代码中: ```java BigDecimal bd = new BigDecimal("3.40256010353E11"); System.out.println...
对于这个特定的序列,我们可以通过初始化一个大数变量,然后不断地将2乘以10的n次方(n为当前项的位数)并累加到结果中,直至达到预设的精度或到达某个终止条件。 文件名"2+22+222+222....2精确计算.txt"暗示着可能...
- **注意事项**: `BigInteger`类提供了对任意精度整数的支持,非常适合处理大数据。 **10. 使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?** - **知识点**: 当使用`final`修饰一个对象引用...
对于大数据计算,Java集合框架(如ArrayList、LinkedList、HashSet、HashMap等)和流API(Stream API)提供了强大的数据处理能力。Java 8引入的流API使得数据处理更加简洁,可以方便地进行过滤、映射、归约等操作。 ...
- **特点**:非关系型数据库,适合大数据和实时应用。 - **类型**:包括键值存储、文档数据库、图形数据库等。 ### 一致性Hash - **原理**:通过哈希函数将节点映射到环上,提高分布式的性能和可用性。 - **应用...
生产者和消费者通过索引在缓冲区中进行数据交换,而无需同步,这是因为缓冲区的大小是2的幂次方,可以使用位运算快速计算索引,减少冲突。 三、Sequence与Barrier 在Disruptor中,每个生产者和消费者都有一个唯一...
数据结构的选择直接影响到算法的效率,例如,如果我们讨论的是数字的阶层,可能会涉及指数计算,这在处理大数据时特别重要。例如,10000的阶层可能是10的10000次方,这是一个极其庞大的数字,对于计算和存储都是巨大...
Hive提供了许多数学函数,如`ABS()`(绝对值)、`SQRT()`(平方根)、`POW(a, b)`(a的b次方)、`RAND()`(随机数)、`ROUND(a, d)`(四舍五入到d位小数)等。 三、类型转换函数 Hive允许将一种数据类型转换为另一...
- **(幂运算):计算幂次,例如a**b表示a的b次方。 单引号('')和双引号("")在Python中等价,都用于表示字符串。 列表操作方法的区别: - append:在列表末尾添加一个元素。 - insert:在指定位置插入一个元素。 -...