了荷恬議俊笥協吶
了荷恬斤噐方象儿抹栖傍掲械嶷勣。壓儿抹才盾儿抹方象扮?械械俶勣壓弌噐匯倖忖准議方楚雫貧序佩方象荷恬。咀緩?壓網胎光嶽方象儿抹圭隈岻念?遍枠駅倬勣母呂匯乂斤方象了序佩議荷恬。宸乂荷恬掲械嶷勣?咀葎C囂冱云附峪嗤匯弌何蛍坪壓議、音辛蛍護議荷恬方。云准婢幣議圭隈淫根阻斤販吭了議産喝曝議荷恬。萩廣吭?宸戦初府議荷恬頁屢輝音頼屁議。
卦指峙?屢哘了侭侃議彜蓑?1賜0?。
宙峰?資函産喝曝bits嶄侃噐了崔pos議了議彜蓑。産喝曝恷恣円議了崔葎0。卦指議彜蓑峙葎0賜1。
鹸墫業?O(1)
卦指峙?涙
宙峰?譜崔産喝曝bits嶄侃噐了崔pos議了議彜蓑?功象state峙栖譜崔?。産喝曝恷恣円議了崔葎0。彜蓑峙駅倬葎0賜1。
鹸墫業?O(1)
卦指峙?涙
宙峰?梓了柴麻曾倖産喝曝bits1嚥bits2議呟賜峙?凪嶄耽倖産喝曝淫根size倖了? 隼朔繍潤惚卦指bitsx嶄。梓了呟賜議狛殻頁繍曾倖屈序崙荷恬方序佩塰麻?泌惚荷恬方嶄侃噐了崔i議曾了屢揖?誼欺0?泌惚侃噐了崔i議曾了音揖?夸卦指1。箭泌?11010⊕01011=10001 (⊕燕幣呟賜?。bitsx侭俶勣議贋刈腎寂喇痕方距喘宀栖砿尖。
鹸墫業?O(β)?凪嶄β葎耽倖産喝曝嶄了議倖方。
卦指峙?涙
宙峰?態廬産喝曝bits?根size了??繍了峙?恣卞count了。緩荷恬頼撹朔?侃噐恷恣極議count了卞強欺産喝曝恷嘔極?遇拝凪麿議了匆屢哘仇態廬。
鹸墫業?O(nβ)?凪嶄β葎耽倖産喝曝嶄了議倖方?n葎勣態廬欺恣円議了方。
了荷恬議俊笥協吶
1) bit_ get
int bit_get(const unsigned char *bits, int pos);卦指峙?屢哘了侭侃議彜蓑?1賜0?。
宙峰?資函産喝曝bits嶄侃噐了崔pos議了議彜蓑。産喝曝恷恣円議了崔葎0。卦指議彜蓑峙葎0賜1。
鹸墫業?O(1)
2) bit_set
void bit_set(unsigned char *bits, int pos, int state);卦指峙?涙
宙峰?譜崔産喝曝bits嶄侃噐了崔pos議了議彜蓑?功象state峙栖譜崔?。産喝曝恷恣円議了崔葎0。彜蓑峙駅倬葎0賜1。
鹸墫業?O(1)
3) bit_xor
void bit_xor(const unsigned char *bits1, const unsigned char *bits2, unsigned char *bitsx, int size);卦指峙?涙
宙峰?梓了柴麻曾倖産喝曝bits1嚥bits2議呟賜峙?凪嶄耽倖産喝曝淫根size倖了? 隼朔繍潤惚卦指bitsx嶄。梓了呟賜議狛殻頁繍曾倖屈序崙荷恬方序佩塰麻?泌惚荷恬方嶄侃噐了崔i議曾了屢揖?誼欺0?泌惚侃噐了崔i議曾了音揖?夸卦指1。箭泌?11010⊕01011=10001 (⊕燕幣呟賜?。bitsx侭俶勣議贋刈腎寂喇痕方距喘宀栖砿尖。
鹸墫業?O(β)?凪嶄β葎耽倖産喝曝嶄了議倖方。
4) bit_rot_left
void bit_rot_left(unsigned char *bits, int size, int count);卦指峙?涙
宙峰?態廬産喝曝bits?根size了??繍了峙?恣卞count了。緩荷恬頼撹朔?侃噐恷恣極議count了卞強欺産喝曝恷嘔極?遇拝凪麿議了匆屢哘仇態廬。
鹸墫業?O(nβ)?凪嶄β葎耽倖産喝曝嶄了議倖方?n葎勣態廬欺恣円議了方。