五個(gè)問(wèn)題


隊(duì)列和棧的區(qū)別:

隊(duì)列(Queue):是限定只能在表的一端進(jìn)行插入和另一端刪除操作的線性表

棧(Stack):是限定之能在表的一端進(jìn)行插入和刪除操作的線性表

隊(duì)列和棧的規(guī)則

隊(duì)列:先進(jìn)先出

棧:先進(jìn)后出

隊(duì)列和棧的遍歷數(shù)據(jù)速度

隊(duì)列:基于地址指針進(jìn)行遍歷,而且可以從頭部或者尾部進(jìn)行遍歷,但不能同時(shí)遍歷,無(wú)需開(kāi)辟空間,因?yàn)樵诒闅v的過(guò)程中不影響數(shù)據(jù)結(jié)構(gòu),所以遍歷速度要快

棧:只能從頂部取數(shù)據(jù),也就是說(shuō)最先進(jìn)入棧底的,需要遍歷整個(gè)棧才能取出來(lái),遍歷數(shù)據(jù)時(shí)需要微數(shù)據(jù)開(kāi)辟臨時(shí)空間,保持?jǐn)?shù)據(jù)在遍歷前的一致性

線程,線程,和協(xié)程

進(jìn)程:進(jìn)程是系統(tǒng)進(jìn)行資源分配和調(diào)度的?個(gè)獨(dú)立單位.

線程:線程是進(jìn)程的?個(gè)實(shí)體, 也叫輕量級(jí)進(jìn)程,是CPU調(diào)度和分派的基本單位,它是比進(jìn)程更小的能獨(dú)立運(yùn)行的基本單位.線程自己基本上不擁有系統(tǒng)資源,只擁有?點(diǎn)在運(yùn)行中必不可少的資源。但是它可與同屬?個(gè)進(jìn)程的其他的線程共享進(jìn)程所擁有的全部資源.

協(xié)程:協(xié)程執(zhí)行過(guò)程中,在協(xié)程內(nèi)部可中斷,然后轉(zhuǎn)而執(zhí)行別的協(xié)程,在適當(dāng)?shù)臅r(shí)候再返回來(lái)接著執(zhí)行。協(xié)程之間不是調(diào)用者與被調(diào)用者的關(guān)系,而是彼此對(duì)稱、平等的,通過(guò)相互協(xié)作共同完成任務(wù)。

面向兌現(xiàn)的特點(diǎn):封裝,繼承,多態(tài)

封裝:

就是把抽象的數(shù)據(jù)和對(duì)數(shù)據(jù)進(jìn)行的操作封裝在一起,將屬性和方法封裝到一個(gè)抽象的類中

數(shù)據(jù)被保存在內(nèi)部,程序的其他部分只有通過(guò)被授權(quán)的操作(成員方法)才能對(duì)數(shù)據(jù)進(jìn)行操作。外界使用類創(chuàng)建對(duì)象,然后讓對(duì)象調(diào)用方法

通過(guò)在實(shí)例上調(diào)用方法,我們就直接操作了對(duì)象內(nèi)部的數(shù)據(jù),但無(wú)需知道方法內(nèi)部的實(shí)現(xiàn)細(xì)節(jié)。對(duì)象方法的細(xì)節(jié)都被封裝在類的內(nèi)部

什么叫可迭代對(duì)象?迭代器?生成器是迭代器嗎?

可迭代對(duì)象:

可迭代對(duì)象包含迭代器。

如果一個(gè)對(duì)象擁有__iter__方法,其是可迭代對(duì)象

迭代器:

一個(gè)對(duì)象擁有next方法,就是迭代器

生成器:

生成器不是迭代器

死鎖:

1.關(guān)于死鎖。 死鎖,就是當(dāng)多個(gè)進(jìn)程或者線程在執(zhí)行的過(guò)程中,因爭(zhēng)奪共享資源而造成的一種互相等待的現(xiàn)象,一旦產(chǎn)生了死鎖,不加人工處理,程序會(huì)一直等待下去,這也被稱為死鎖進(jìn)程。

互斥鎖:

只有當(dāng)一個(gè)進(jìn)程在進(jìn)行資源的時(shí)候,進(jìn)行上鎖,可以保護(hù)資源,只有當(dāng)他運(yùn)行玩的時(shí)候,才會(huì)進(jìn)行解鎖。對(duì)數(shù)據(jù)的保護(hù)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、隊(duì)列和棧的區(qū)別: 隊(duì)列(Queue):是限定只能在表的一端進(jìn)行插入和另一端刪除操作的線性表 棧(Stack):...
    594_a92a閱讀 219評(píng)論 0 0
  • 必備的理論基礎(chǔ) 1.操作系統(tǒng)作用: 隱藏丑陋復(fù)雜的硬件接口,提供良好的抽象接口。 管理調(diào)度進(jìn)程,并將多個(gè)進(jìn)程對(duì)硬件...
    drfung閱讀 3,746評(píng)論 0 5
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒(méi)有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,621評(píng)論 1 32
  • python之進(jìn)程、線程與協(xié)程 有這么個(gè)例子說(shuō)他們的區(qū)別,幫助理解很有用。 有一個(gè)老板想開(kāi)一個(gè)工廠生產(chǎn)手機(jī)。 他需...
    道無(wú)虛閱讀 3,312評(píng)論 0 3
  • 2012年10月9日 夜半醒來(lái),聽(tīng)到窗外幾聲雞叫,應(yīng)該和周扒皮沒(méi)有什么關(guān)系,可還是讓我想起學(xué)過(guò)的小學(xué)課文來(lái)...
    明月劫閱讀 152評(píng)論 0 1

友情鏈接更多精彩內(nèi)容