位运算
简介我们都知道计算机里的数据实际上是通过二进制进行储存的,所以我们在计算机上的所有操作其实都是在操作这些二进制数据位运算,意思就是在实际编程中对把数据当做二进制数进行运算操作,因为计算机实际上也是把数据转化为二进制数进行运算,所以我们直接使用二进制的运算方式计算的效率就会很高试想如果是十进制运算的话,计算机还要先把十进制运算转化为二进制运算才开始计算,而我们直接使用二进制运算就跳过了中间”编译”的过程,这也是为什么我们说位运算的效率高. 种类在Java里位运算共有7种,如下表 名称 Java 按位与 a & b 按位或 a | b 按位异或 a ^ b 按位取反 ~a 左移 a << b 带符号右移 a >> b 无符号右移 a >&..
更多342.Power of Four(Easy)
Given an integer (signed 32 bits), write a function to check whether it is a power of 4.给定一个32位的整数,判断是否为4次幂 * 一开始看到这题我就想到打表,但是,果然还是位运算最厉害* Example: Given num = 16, return true. Given num = 5, return false. Follow up Could you solve it without loops/recursion? My Solution(Java) Version 1 Time: 2ms: 没有什么好说的,在32位数的世界里面,4次幂并没有几个,只有15个数,直接存数组里面对比就是了,只是..
更多344.Reverse String(Easy)
Write a function that takes a string as input and returns the string reversed.编写一个函数,输入一个字符串,并输出其倒序的字符串。 Example: Given s = “hello”,return “olleh”. My Solution(Java) Version 1 Time: 8ms: 倒序字符串,简单地把字符串从结尾开始取出来,放到一个新的StringBuffer中,然后输出 public class Solution { public String reverseString(String s) { StringBuffer sb = new StringBuff..
更多