中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

iOS算法教程之分段截取常數示例

發布時間:2020-09-05 11:40:10 來源:腳本之家 閱讀:158 作者:石虎132 欄目:移動開發

前言

本文主要給大家介紹了關于iOS算法之分段截取常數的相關內容,分享出來供大家參考學習價值,下面話不多說了,來一起看看詳細的介紹吧。

一、錯位分段相加,遞歸合并的過程

#include
intHamming_weight_3(intn )
{
n = (n&0x55555555) + ((n>>1)&0x55555555);
n = (n&0x33333333) + ((n>>2)&0x33333333);
n = (n&0x0f0f0f0f) + ((n>>4)&0x0f0f0f0f);
n = (n&0x00ff00ff) + ((n>>8)&0x00ff00ff);
n = (n&0x0000ffff) + ((n>>16)&0x0000ffff);
returnn;
}
intmain()
{
intn;
while(scanf("%d", &n) !=EOF)//讀入整數和打印1的個數
{
printf("%d \n",Hamming_weight_3( n ));
}
return0;
}

二、細節分析:

1.數字都有什么特點:

0x5555……這個換成二進制之后就是0101010101010101……

0x3333……這個換成二進制之后就是0011001100110011……

0x0f0f……...這個換成二進制之后就是0000111100001111……

2.如果把這些二進制序列看作一個循環的周期序列的話,那么第一個序列的周期是2,每個周期是01,第二個序列的周期是4,每個周期是0011,第三個的周期是8,每個是00001111……

3.這些玩意相與之后的結果:

整個數按照上述的周期被分成了n段,每段里面的前半截都被清零,后半截保留了數據。不同在于這些數分段的長度是2倍增長的。于是我們可以姑且命名它們為“分段截取常數”。

謝謝!!!

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

长垣县| 邛崃市| 涿鹿县| 什邡市| 荃湾区| 凤翔县| 嘉禾县| 宝清县| 洛扎县| 泰和县| 深水埗区| 儋州市| 霍邱县| 阿克陶县| 株洲县| 六枝特区| 随州市| 巧家县| 河间市| 宁阳县| 中方县| 平昌县| 白朗县| 平谷区| 武强县| 赤峰市| 景东| 淳化县| 凭祥市| 临沂市| 定州市| 中宁县| 河池市| 牙克石市| 财经| 双牌县| 宁安市| 江口县| 阜宁县| 正安县| 玉屏|