sponsored links

多元思維模型·演算法篇(3)——編碼

編碼,這個看上去就有點計算機風格的詞兒,其實早已融入了我們的生活。

NO.1

手指與數

我先問你一個問題,10個手指能表示幾個數?

如果你脫口而出——10個,這也不能怪你。一個手指一個數,十個手指十個數,這是大多數人的固化思維。

但你仔細想想就知道,我們一個手就能表示十個數啊:

多元思維模型·演算法篇(3)——編碼

(圖片來源:網路)

那麼,兩隻手就能表示10x10=100個數啊。

原來拳頭表示10,我們把它換成0。這樣的話,一個手當個位,一個手當十位,就能表示0-99共100個數字了。

僅此而已嗎?還能不能表示更多的數?

十進位制的話,已經是極限了。但如果換成二進位制,就能突破這個極限,表示更多的數。

二進位制,就是逢二進一。比如,二進位制10表示數字2,二進位制100表示數字4。

這樣的話,每個手指都有伸展和彎曲兩種狀態,分別代表二進位制世界裡的1和0。

一共有10個手指,每個手指有2種狀態,那麼就能表示2的10次方——也就是1024種不同的數字。

這就是編碼的威力,日常生活中我們經常用十進位制,計算機裡都是使用的二進位制。如果我們平常也能把二進位制思想運用起來,很多複雜的問題反而會迎刃而解。

下面我再舉兩個例子,讓你明白二進位制思想是如何應用的:

NO.2

分割金條

小明想裝修房子,他找了一個工人,工人告訴他說,需要7天的工作量。他們商量好一根金條作為報酬,但是工人要求每天都支付1/7的工資。

請問,你該如何在金條上只切兩刀,完成工人的要求呢?

很多人都被這個題難住了,一根金條切兩刀,最多也就能分成四塊啊,怎麼才能分成七份呢?

其實,他們都被固定思維限制住了。這個題看似是一個智力題,其實背後隱含著二進位制的思想。

我們再來仔細讀題,目標是切兩刀,使得每天能夠支付1/7的工資,並不是讓你把金條分成七份。(仔細閱讀這句話

理解了這一點,解題思路也就來了:

先把金條7等分(不用切開,只是找到等分點),在1/7處切一刀,3/7處切另一刀。

這樣,兩刀將金條分成了三塊,它們的重量分別是1/7、2/7和4/7。

接下來,你的目的是,如何用這三塊金條,讓工人每天都能得到1/7。

換句話說,你希望只用1、2和4這三個數字就能表示1-7這七個數(仔細思考這句話)。

可以嗎?當然可以。

除了它們三個數本身之外,3=2+1,5=4+1,6=4+2,7=4+2+1.

你看,所有的數都表示出來了。

下面,就是你發工資的詳細過程:

第1天,給工人1/7的金條;

第2天,給工人2/7的金條,同時把1/7這根拿回來;

第3天,把昨天的1/7再給工人,此時工人手裡有3/7的金條;

第4天,給工人4/7的金條,把2/7和1/7都收回來;

第5天至第7天,重複第1天到第3天的方法即可。

這樣,只用3根金條,就可以完成7天的工資發放,而且工人每天都能得到1/7。

你可能會問了,為什麼是這個比例,1、2、4這三個數又有什麼玄機?

實際上,如果用二進位制表示的話,你就會發現端倪:

1的二進位制還是1;2的二進位制是10;4的二進位制是100.

你發現了嗎?這三個數分別是二進位制不同位數開頭的那個數。

這樣的話,它們三個互相組合,就可以將1-111(二進位制)這7個數表示出來。

你看,又是二進位制的思想發揮了作用。

如果你覺得還不過癮,下面這個例子會讓你深刻體會二進位制的威力。

NO.3

毒藥試驗

桌上有64瓶藥,只有1瓶是有毒的。已知小白鼠喝毒藥後,第二天就會死亡。並且無毒的藥可以一起喝,不會有任何副作用。你只有一天的時間,請問至少需要多少隻小白鼠,才能找到這瓶毒藥?

如果你還是脫口而出64只,那我只能請你放過小白鼠。

蠻幹是不行的,我們還是用二進位制的思想來解決這個問題。

具體來說,先把這64個瓶子按0-63進行編號,當然是二進位制的(或許你已經猜到)。

在二進位制中,63用111111來表示,所以你可能發覺了,用6只小白鼠就足夠了。具體編碼方式如下:


瓶子編號


第1只


第2只


第3只


第4只


第5只


第6只


0


0


0


0


0


0


0


1


0


0


0


0


0


1


2


0


0


0


0


1


0


...


...


...


...


...


...


...


62


1


1


1


1


1


0


63


1


1


1


1


1


1

也就是說,每一個瓶子的編號,唯一對應了6位的二進位制碼,而每一列,也就是二進位制編碼的每一位,從左到右依次對應了一隻小白鼠,總共6只小白鼠。

接下來,試驗開始,從0號瓶開始,讓小白鼠開始喝藥。要求是:只有二進位制碼為1對應的那隻小白鼠才喝(當然你讓0對應的小白鼠喝也行)。

舉個例子,2號瓶對應的二進位制碼中,從左到右的第5位是1,因此只有第5只小白鼠喝,其它的不喝。

這樣,第二天,如果有小白鼠死了,你就可以根據死的是哪隻來推斷哪個瓶子裡是毒藥。

比如,第2、4、6只小白鼠死了,這說明編號010101的瓶子裡是毒藥。

因為只有這個序列才能讓第2、4、6只小白鼠喝藥,其它的不喝。別忘了,我們的二進位制編號是唯一的。

而二進位制數010101對應的十進位制數是21,因此,編號為21的瓶子裡是毒藥。

回過頭來看,為什麼非得是6只呢?

站在小白鼠的角度,它的選擇只有兩種,要麼喝,要麼不喝,分別對應了二進位制世界裡的1和0。

1個小白鼠有2種狀態,那麼6只小白鼠就有2的6次方——64種狀態,而這正好對應了64個瓶子,也就是64個二進位制數。

因此,對瓶子的編號進行二進位制編碼,就是最優的選擇。

最後

希望這三個例子能讓你對編碼有更深的理解,明白不僅僅是計算機世界需要編碼,我們日常生活中也會用到二進位制的思想。

分類: 數碼
時間: 2022-01-03

相關文章

谷歌 Pixel 6 系列手機發佈會定檔 10 月 20 日

谷歌 Pixel 6 系列手機發佈會定檔 10 月 20 日
谷歌正式宣佈將於美國東部時間 10 月 19 日下午 1 點/太平洋時間上午 10 點/北京時間 20 日凌晨 1 點舉行的線上釋出活動.據官方介紹,Pixel 6 系列手機包括 Pixel 6 和 ...

MacBook M1X 拒絕擠牙膏 | 安卓12 正式釋出 | Google pixel 6 定檔 10 月 20 日

MacBook M1X 拒絕擠牙膏 | 安卓12 正式釋出 | Google pixel 6 定檔 10 月 20 日
1.強悍效能:M1X 拒絕擠牙膏 這一場釋出會的絕對主角已無懸念,那就是全新 MacBook Pro 14 英寸.16 英寸,以及內建的新一代蘋果自研晶片 M1X.其中,新款 14 英寸型號將取代 1 ...

華為Mate50定檔10月21日,鴻蒙3.0+120W快充,還有7000mAh大電池

華為Mate50定檔10月21日,鴻蒙3.0+120W快充,還有7000mAh大電池
近日,有媒體爆料爆料,華為將於今年十月份進行一場全球新品釋出會,時間定檔10月21日晚9點,釋出會相關的海報已流出,有一款手機側面位於海報中間的位置.據某知名數碼大V爆料稱,這可能就是我們期待已久的華 ...

《一人之下》第4季定檔9月24日!觀看之前這些知識你得補一補

《一人之下》第4季定檔9月24日!觀看之前這些知識你得補一補
<一人之下>第1339篇分析文 <一人之下>動漫第四季定檔9月24日,很多網友等這天已經等了很久了,如今動漫終於出來了,大家該如何迎接這視覺盛宴?該做如何準備?下面我們就來做一 ...

張涵予、範偉主演電影《鐵道英雄》定檔11月19日

張涵予、範偉主演電影《鐵道英雄》定檔11月19日
新京報訊 9月20日,由楊楓執導,張涵予.範偉.魏晨.周也.俞灝明主演的電影<鐵道英雄>釋出定檔海報和預告,宣佈重新定檔11月19日.據悉,該片原計劃於今年國慶檔上映. 圖片來自官方微博 ...

《鐵道英雄》電影節官宣定檔11月19日 張涵予範偉領銜家國熱血傳奇

《鐵道英雄》電影節官宣定檔11月19日 張涵予範偉領銜家國熱血傳奇
9月20日晚,電影<鐵道英雄>劇組出席第十一屆北京國際電影節開幕式紅毯,華誼兄弟傳媒股份有限公司副董事長兼CEO.本片總製片人王中磊,導演楊楓,主演張涵予.魏晨.俞灝明共同亮相.主創們也攜 ...

動畫電影《豬迪克之藍海奇緣》重新定檔11月6日
新京報訊(記者 周慧曉婉)10月8日,動畫IP"豬迪克"首部大電影<豬迪克之藍海奇緣>宣佈重新定檔11月6日.一場別開生面的奇幻冒險之旅重灌起航,豬迪克與精靈寵物豆包合 ...

電影《中國營長》定檔10月13日,熱血抗戰,軍魂不滅

電影《中國營長》定檔10月13日,熱血抗戰,軍魂不滅
由趙勇執導,張成飛編劇,封柏領銜主演,趙家林特別出演,王昌瑞.徐大寧.周媛媛.畢瀚文.項泰誠主演的抗戰電影<中國營長>定檔10月13日在愛奇藝影片獨家上映. 該電影改編自真實歷史事件夜襲陽 ...

神舟十三號載人飛行任務新聞釋出會將於10月14日下午召開
據中國載人航天工程辦公室介紹,空間站階段飛行任務總指揮部定於北京時間10月14日15時,在酒泉衛星發射中心召開神舟十三號載人飛行任務新聞釋出會,通報此次任務有關情況. 點連結,關注直播 直播預告 | ...

《一年一度喜劇大賽》定檔10月15日 黃渤李誕馬東徐崢於和偉釋出會首合

《一年一度喜劇大賽》定檔10月15日 黃渤李誕馬東徐崢於和偉釋出會首合
10月13日,由愛奇藝出品.米未聯合出品並製作的原創喜劇競演綜藝<一年一度喜劇大賽>在京舉辦媒體釋出會.愛奇藝副總裁姜濱,<一年一度喜劇大賽>組委會成員黃渤.李誕.馬東.徐崢. ...

終極之戰打響!《007:無暇赴死》定檔10月29日

終極之戰打響!《007:無暇赴死》定檔10月29日
1905電影網訊 備受期待的年度動作大片<007:無暇赴死>正式官宣定檔,將於10月29日登陸內地各大院線!更兇險的任務.更殘暴的反派一一來襲,邦德的拯救世界之旅充滿了未知與危機,他能否再 ...

鬼滅之刃第二季新預告片放出,定檔12月5日,看到OP主唱滿足了

鬼滅之刃第二季新預告片放出,定檔12月5日,看到OP主唱滿足了
大家好,我是老巴. <鬼滅之刃>動畫第一季19年開始放送,完結到現在也差不多兩年的時間了.時隔兩年,在大家等得花兒都要謝了的時候,官方終於是放出了第二季的確切訊息. 不久前,<鬼滅之 ...

《第十二秒》定檔10月18日,上演“消失的愛人”懸疑大案

《第十二秒》定檔10月18日,上演“消失的愛人”懸疑大案
中國青年報客戶端訊(中青報·中青網記者 蔣肖斌)"我想找我的丈夫,他叫趙亦晨,是刑偵支隊緝毒組警察,能不能幫我告訴他--"留下這通止於11秒的報警電話後,趙亦晨的妻子便離奇失蹤.8 ...

《黃河篇2》定檔10月22日,6位MC為定檔做宣傳,僅1人暫未表態

《黃河篇2》定檔10月22日,6位MC為定檔做宣傳,僅1人暫未表態
導語:綜藝節目對於很多年輕人來說,簡直就是"精神食糧",尤其是下班回到家後,啥事都不想幹,只想在家裡盡情的追劇,讓整個人都得到放鬆. <奔跑吧黃河篇>作為一檔公益性質的 ...

電影《世上只有媽媽好》首爆海報,定檔11月6日公映

電影《世上只有媽媽好》首爆海報,定檔11月6日公映
來源:三峽晚報 電影<世上只有媽媽好>近日釋出定檔海報.影片由孔令平導演,黃小蕾領銜主演,季晨.周韋彤.馬藝芮.何達.雷鵬宇主演,李菁.李偉健.劉惠儀友情出演. 定檔海報新鮮出爐,感受母愛 ...

“大女主版”《琅琊榜》定檔10月18,劇情吸睛男女主演顏值成亮點

“大女主版”《琅琊榜》定檔10月18,劇情吸睛男女主演顏值成亮點
最近,古裝劇市場有點劇荒. 前一陣<周生如故>剛剛大結局,這幾天熱度很高,口碑兩極分化的<君九齡>也迎來大結局.目前在播的劇裡,好像沒有什麼特別亮眼的古裝劇. 10月13日,& ...

刀劍神域劇場版定檔10月,桐亞二人要撒糖,新角色登場可能有刀

刀劍神域劇場版定檔10月,桐亞二人要撒糖,新角色登場可能有刀
導讀:<刀劍神域>這部動畫作品近年來的口碑越來越差,特別是在第三季愛麗絲篇章完結後,動畫的評分也創造的<刀劍神域>歷史上的最低分4.8. 但是即便如此,這部曾經貫穿很多人青春的 ...

定檔10月的7部高質量韓劇:李英愛對拼嫩版宋慧喬,全智賢惹期待

定檔10月的7部高質量韓劇:李英愛對拼嫩版宋慧喬,全智賢惹期待
隨著國產劇質量的提升,韓劇在國內所佔據的份額也開始收縮,但部分韓劇的質量依舊線上.進入10月,又有一批高質量的韓劇即將與觀眾見面,全智賢.韓韶禧.李英愛,誰能成為收視王者呢? 話不多說,就來看看在10 ...

「早報」「來炸場」蘋果秋季第二場釋出會定檔/榮耀宣佈與谷歌恢復合作

「早報」「來炸場」蘋果秋季第二場釋出會定檔/榮耀宣佈與谷歌恢復合作
10 月 13 日[早報]導讀: ① 全民網購!淘寶上線"長輩模式":無廣告推送.字型增大 ② 攜程訂票騙錢? 12306 表示"搶票加速包"不存在優先購票權 ...

沒等來《慶餘年2》,卻等來《雪中》定檔11月,網友:熬夜也要追

沒等來《慶餘年2》,卻等來《雪中》定檔11月,網友:熬夜也要追
2019年底上映了一部熱度非常高的電視劇,這部電視劇叫<慶餘年>,改編自貓膩同名小說.這部電視劇的熱度非常高,憑藉一己之力將網劇捧到了主流位置,<慶餘年>真可謂是功不可沒. 如 ...