zoukankan      html  css  js  c++  java
  • LeetCode

              二进制转换和字符串逆序。要考虑int的范围,测试数据是有溢出的。Math.pow是有精度损失的,最好写成整数的。

      

    public class ReverseBits {
        
        public static int reverseBits(int n) {
            StringBuilder sb = new StringBuilder(Integer.toBinaryString(n));
            StringBuilder s = new StringBuilder(sb.reverse());
            if(s.length()!=32) {
                while(s.length() != 32) {
                    s.append("0");
                }
            }
            //System.out.println(s);
            int ans = 0;
            for(int i=s.length()-1; i>=0; i--) {
                if(s.charAt(i) == '1') {
                    //System.out.println(s.length()-1-i);
                    ans += pow(2, s.length()-1-i);
                }
            }
            return ans;
        }
        public static int pow(int n, int m) {
            int ans = 1;
            for(int i=0; i<m; i++) {
                ans *= n;
            }
            ans = Math.abs(ans);
            return ans;
        }
  • 相关阅读:
    linux-shell编程-1-简介
    linux-tail
    linux-grep
    linux-sort
    linux-sed
    linux-awk
    函数调用
    选择结构和循环结构
    列表字典集合常用函数
    datetime模块
  • 原文地址:https://www.cnblogs.com/wxisme/p/4382499.html
Copyright © 2011-2022 走看看