免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

劍指offer常見題-位運算問題(二)-創新互聯

位運算相關算法

二叉樹相關性質
計算機中的數在內存中都是以二進制形式進行存儲的 ,而位運算就是直接對整數在內存中的二進制位進行操作,因此其執行效率非常高,在程序中盡量使用位運算進行操作,這會大大提高程序的性能。
需要掌握的內容:

創新互聯建站是一家集網站建設,灌南企業網站建設,灌南品牌網站建設,網站定制,灌南網站建設報價,網絡營銷,網絡優化,灌南網站推廣為一體的創新建站企業,幫助傳統企業提升企業形象加強企業競爭力。可充分滿足這一群體相比中小企業更為豐富、高端、多元的互聯網需求。同時我們時刻保持專業、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們為更多的企業打造出實用型網站。
  1. 運算符的優先級
  2. 位運算符的運算律’
  3. 位運算高級操作
  4. 負數的位運算
題目 二進制中1的個數

典型題例:

輸入一個 32 位整數,輸出該數二進制表示中 1 的個數。

示例 :

輸入:9
輸出:2
解釋:9的二進制表示是1001,一共有2個1。

輸入:-2
輸出:31
解釋:-2在計算機里會被表示成11111111111111111111111111111110,
      一共有31個1。

思路
核心
在這里插入圖片描述

代碼:

class Solution {public:
    int NumberOf1(int n) {int res = 0;
        unsigned int un = n; 
        while (un) res += un & 1, un >>= 1;
        return res;
    }
};
不用加減乘除做加法

典型題例:

寫一個函數,求兩個整數之和,要求在函數體內不得使用 +、-、×、÷ 四則運算符號。

示例 :

輸入:num1 = 1 , num2 = 2

輸出:3

思路

在這里插入圖片描述

代碼:

class Solution {public:
    int add(int num1, int num2){while(num2){int sum = num1^num2;            //不進位加法
            int carry = (num1 & num2)<< 1;  //進位
            num1 = sum;                     //更新num1 
            num2 = carry;                   //更新num2
        }

        return num1;
    }
};

充電站
推薦一個零聲學院免費公開課程,個人覺得老師講得不錯,分享給大家:Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒體,CDN,P2P,K8S,Docker,TCP/IP,協程,DPDK等技術內容,立即學習

你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

新聞標題:劍指offer常見題-位運算問題(二)-創新互聯
瀏覽路徑:http://m.newbst.com/article2/cejhic.html

成都網站建設公司_創新互聯,為您提供外貿建站網頁設計公司用戶體驗移動網站建設面包屑導航關鍵詞優化

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

營銷型網站建設