see
http://www.leetcode.com/2011/08/reverse-bits.html
public class ReverseBitsOfInteger {
/**
* like reversing a string.
* we swap the bits in (0,N-1),(1,N-2)......
* we do it with XOR
*
*/
public static void main(String[] args) {
int y = 0x01010101;
int z = reverseBits(y);//z=ox80808080
System.out.printf("%x\n%x", y, z);
}
public static int reverseBits(int y) {
// INT_SIZE=32 in general
int INT_SIZE = Integer.SIZE;
for (int i = 0; i < INT_SIZE / 2; i++) {
int j = INT_SIZE - 1 - i;
int low = (y >> i) & 1;
int high = (y >> j) & 1;
int A = 1 << i;
int B = 1 << j;
if ((high ^ low) == 1) {
y = y ^ (A | B);
}
}
return y;
}
}
分享到:
相关推荐
3. **位操作**:Java中的位操作(如位移、按位与、按位或等)可以帮助我们高效地完成整数反转。我们可以逐位取出数字的每一位,然后将其插入到新整数的对应位置。 4. **进位处理**:在反转过程中,需要处理进位的...
"Recursive-seek-integer-reverse.rar_reverse recursive_seek"这个标题暗示我们,它涉及到使用递归算法来实现一个特定的功能,即反转整数的顺序。描述中提到的例子,输入12345,输出54321,进一步确认了我们要讨论...
例如,`<class>`元素表示一个Java类,它的`name`属性是类的全限定名,`table`属性指定对应的数据库表。`<id>`元素定义主键,`<property>`元素则映射类的属性到表的列。此外,`hibernate-mapping-3.0.dtd`还支持更...
Reverse the order of bits in an unsigned integer Chapter 20. Convert an integer to a string and a string to an integer Chapter 21. Convert a number from base b1 to base b2 Chapter 22. Given a set S, ...
c语言入门 07-reverse-integer.c
js js_leetcode题解之7-reverse-integer.js
首先,Java中的字符串是不可变对象,这意味着一旦创建了一个字符串对象,就不能更改它的内容。因此,反转字符串通常涉及到创建一个新的字符串对象。以下是使用Java内置方法实现字符串反转的基本方法: 1. **...
逆向工程(Reverse Engineering)在软件开发中是一个常见的实践,尤其是在数据库驱动的项目中。通过逆向工程,可以从现有的数据库结构生成相应的 Java 源代码,这大大节省了开发者手动创建这些对象的时间,同时也...
标题“demo-Java-src.zip”表明这是一个包含Java源代码的压缩文件。通常,开发者会将一组相关的Java源代码文件打包成ZIP格式以便于传输、存储或版本控制。在这个案例中,“src”一词暗示了文件夹中可能包含了项目的...
在Java集合框架中,`Collections`工具类提供了一个`reverse()`方法,可以用来反转List类型的集合。例如,如果你有一个ArrayList或LinkedList,你可以直接调用`Collections.reverse(list)`来反转集合中的元素顺序。 ...
java入门 java_leetcode题解之007_Reverse_Integer
该压缩包的核心知识点是“整数反转”,这是一个常见的编程面试题,主要考察对数字操作和位运算的理解。问题要求编写一个函数,接受一个整数作为输入,然后返回它的反转值。例如,输入123应返回321,输入-123应返回-...
Java提供了一个名为`Arrays`的工具类,其中有一个`reverse()`方法可以方便地反转数组。对于基本类型数组,如整型数组,你可以这样使用: ```java import java.util.Arrays; public class ArrayReverse { public ...
c c语言_leetcode 0007_reverse_integer.zip
对于一个给定的32位有符号整数`x`,需要编写程序使其数字顺序反转。例如,输入为`123`时,输出应为`321`;若输入为`-123`,则输出为`-321`。但是,由于32位整数存在最大值`2^31 - 1`和最小值`-2^31`,因此在反转过程...
java-dirty 是一个快速的基于文件的对象存储系统,只能往存储里添加对象,使用内存映射文件技术。示例代码:Store store = Store.of(Foo.class).from("/path/to/file"); store.put(new Foo(1,2)); store.all()....
第7题是“整数反转”(Reverse Integer),这是一个基础但又关键的问题,涉及到整数操作、位运算以及异常处理。下面将详细探讨这个问题及其解决方案。 题目描述: 给定一个32位有符号整数,你的任务是反转它的每一...
"JAVA-LAB-ASSIGNMENT.rar_assignment" 是一个包含Java实验室作业的压缩文件,旨在帮助学习者掌握核心Java编程技能。这个压缩包包括了多个Java编写的类文件以及一个文档,每个文件对应一个特定的编程任务或概念。 1...
Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321 click to show spoilers. Have you thought about this? Here are some good questions to ask before coding...
"ReverseInteger"这个算法Demo主要关注的是整数反转的问题,这在计算机科学中是一个常见的基础操作,尤其是在处理数字逻辑、数据存储或者网络传输时。下面将详细探讨这个算法及其实现。 首先,让我们理解问题的核心...