- 相關(guān)推薦
數(shù)據(jù)結(jié)構(gòu)中的名詞解釋
數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)結(jié)構(gòu)是研究數(shù)據(jù)元素之間抽象化的相互關(guān)系和這種關(guān)系在計(jì)算機(jī)中的存儲表示(即所謂數(shù)據(jù)的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)),并對這種結(jié)構(gòu)定義相適應(yīng)的運(yùn)算,設(shè)計(jì)出相應(yīng)的算法,而且確保經(jīng)過這些運(yùn)算后所得到的新結(jié)構(gòu)仍然是原來的結(jié)構(gòu)類型。
數(shù)據(jù):數(shù)據(jù)是人們利用文字符號、數(shù)字符號以及其他規(guī)定的符號對現(xiàn)實(shí)世界的事物及其活動所做的描述。在計(jì)算機(jī)科學(xué)中,數(shù)據(jù)的含義非常廣泛,我們把一切能夠輸入到計(jì)算機(jī)中并被計(jì)算機(jī)程序處理的信息,包括文字、表格、圖象等,都稱為數(shù)據(jù)。 結(jié)點(diǎn):結(jié)點(diǎn)也叫數(shù)據(jù)元素,它是組成數(shù)據(jù)的基本單位。
邏輯結(jié)構(gòu):結(jié)點(diǎn)和結(jié)點(diǎn)之間的邏輯關(guān)系稱為數(shù)據(jù)的邏輯結(jié)構(gòu)。
存儲結(jié)構(gòu):數(shù)據(jù)在計(jì)算機(jī)中的存儲表示稱為數(shù)據(jù)的存儲結(jié)構(gòu)。
數(shù)據(jù)處理:數(shù)據(jù)處理是指對數(shù)據(jù)進(jìn)行查找、插入、刪除、合并、排序、統(tǒng)計(jì)以及簡單計(jì)算等的操作過程。
數(shù)據(jù)類型:數(shù)據(jù)類型是指程序設(shè)計(jì)語言中各變量可取的數(shù)據(jù)種類。數(shù)據(jù)類型是高級程序設(shè)計(jì)語言中的一個(gè)基本概念,它和數(shù)據(jù)結(jié)構(gòu)的概念密切相關(guān)。本章主要介紹了如下一些基本概念:
線性表:一個(gè)線性表是n≥0個(gè)數(shù)據(jù)元素a0,a1,a2,…,an-1的有限序列。線性表的順序存儲結(jié)構(gòu):在計(jì)算機(jī)中用一組地址連續(xù)的存儲單元依次存儲線性表的各個(gè)數(shù)據(jù)元素,稱作線性表的順序存儲結(jié)構(gòu)。
線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu):線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)就是用一組任意的存儲單元——結(jié)點(diǎn)(可以是不連續(xù)的)存儲線性表的數(shù)據(jù)元素。表中每一個(gè)數(shù)據(jù)元素,都由存放數(shù)據(jù)元素值的數(shù)據(jù)域和存放直接前驅(qū)或直接后繼結(jié)點(diǎn)的地址(指針)的指針域組成。
循環(huán)鏈表:循環(huán)鏈表(Circular Linked List)是將單鏈表的表中最后一個(gè)結(jié)點(diǎn)指針指向鏈表的表頭結(jié)點(diǎn),整個(gè)鏈表形成一個(gè)環(huán),從表中任一結(jié)點(diǎn)出發(fā)都可找到表中其他的結(jié)
循環(huán)鏈表:循環(huán)鏈表(Circular Linked List)是將單鏈表的表中最后一個(gè)結(jié)點(diǎn)指針指向鏈表的表頭結(jié)點(diǎn),整個(gè)鏈表形成一個(gè)環(huán),從表中任一結(jié)點(diǎn)出發(fā)都可找到表中其他的結(jié)點(diǎn)。
雙向鏈表:雙向鏈表中,在每一個(gè)結(jié)點(diǎn)除了數(shù)據(jù)域外,還包含兩個(gè)指針域,一個(gè)指針(next)指向該結(jié)點(diǎn)的后繼結(jié)點(diǎn),另一個(gè)指針(prior)指向它的前驅(qū)結(jié)點(diǎn)。
除上述基本概念以外,學(xué)生還應(yīng)該了解:線性表的基本操作(初始化、插入、刪除、存取、復(fù)制、合并)、順序存儲結(jié)構(gòu)的表示、線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)的表示、一元多項(xiàng)式Pn(x),掌握順序存儲結(jié)構(gòu)(初始化、插入操作、刪除操作)、單鏈表(單鏈表的初始化、單鏈表的插入、單鏈表的刪除)。
一些簡單的數(shù)據(jù)結(jié)構(gòu)的名詞解釋2017-04-09 22:55 | #2樓
線性表:
線性表是由n(n≥0)個(gè)相同類型的元素組成的有序集合。
棧:
線性表的一種特殊形式,是一種限定性數(shù)據(jù)結(jié)構(gòu),也就是在對線性表的操作加以限制后,形成的一種新的數(shù)據(jù)結(jié)構(gòu)。是限定只在表尾進(jìn)行插入和刪除操作的線性表。允許插入和刪除的一端稱為棧頂,另一端稱為棧底,不含任何數(shù)據(jù)元素的棧稱為空棧。
隊(duì)列:
將線性表的插入和刪除操作分別限制在表的兩端進(jìn)行,和棧相反,隊(duì)列是一種先進(jìn)先出的線性表。允許插入的一端稱為隊(duì)尾,允許刪除的一端稱為隊(duì)頭。
串:
線性表的一種特殊形式,表中每個(gè)元素的類型為字符型,是一個(gè)有限的字符序列。
堆:
堆是具有下列性質(zhì)的完全二叉樹:每個(gè)結(jié)點(diǎn)的值都小于或等于其左右孩子結(jié)點(diǎn)的值(稱為小根堆);或者每個(gè)結(jié)點(diǎn)的值都大于或等于其左右孩子結(jié)點(diǎn)的值(稱為大根堆)。
堆排序:
首先將待排序的記錄序列構(gòu)造成一個(gè)堆(假設(shè)利用大根堆),此時(shí),選出了堆中所有記錄的最大者即堆頂記錄,然后將它從堆中移走(通常將堆頂記錄和堆中最后一個(gè)記錄交換),并將剩余的記錄再調(diào)整成堆,這樣又找出了次大的記錄,以此類推,直到堆中只有一個(gè)記錄為止。
java堆和棧的區(qū)別:
①數(shù)據(jù)結(jié)構(gòu):堆:堆可以被看成是一棵完全二叉樹樹(最小堆和最大堆)。棧:一種先進(jìn)后出的數(shù)據(jù)結(jié)構(gòu)。
②棧的優(yōu)勢是,存取速度比堆要快,僅次于直接位于cpu中的寄存器。但缺點(diǎn)是,存在棧中的數(shù)據(jù)大小與生存期必須是確定的,缺乏靈活性。另外,棧數(shù)據(jù)在多個(gè)線程或者多個(gè)棧之間是不可以共享的,但是在棧內(nèi)部多個(gè)值相等的變量是可以指向一個(gè)地址的。
堆的優(yōu)勢是可以動態(tài)地分配內(nèi)存大小,生存期也不必事先告訴編譯器,java的垃圾收集器會自動收走這些不再使用的數(shù)據(jù)。但缺點(diǎn)是,由于要在運(yùn)行時(shí)動態(tài)分配內(nèi)存,存取速度較慢。
③ 棧(stack)與堆(heap)都是java用來在ram中存放數(shù)據(jù)的地方。與c++不同,java自動管理?xiàng):投眩绦騿T不能直接地設(shè)置;蚨。
④java中的數(shù)據(jù)類型有兩種。
一種是基本類型(primitivetypes), 共有8種,即int,short, long, byte, float, double, boolean, char(注意,并沒有string的基本類型)。這些字面值的數(shù)據(jù),由于大小可知,生存期可知(這些字面值固定定義在某個(gè)程序塊里面,程序塊退出后,字段值就消失了),出于追求速度的原因,就存在于棧中。
另一種是包裝類數(shù)據(jù),【如integer,string, double等將相應(yīng)的基本數(shù)據(jù)類型包裝起來的類。這些類數(shù)據(jù)全部存在于【堆】中】,java用new()語句來顯示地告訴編譯器,在運(yùn)行時(shí)才根據(jù)需要?jiǎng)討B(tài)創(chuàng)建,因此比較靈活,但缺點(diǎn)是要占用更多的時(shí)間。
【數(shù)據(jù)結(jié)構(gòu)中的名詞解釋】相關(guān)文章:
保險(xiǎn)中的名詞解釋03-03
中建史名詞解釋06-02
中密度纖維板工藝參數(shù)名詞解釋04-26
地貌名詞解釋06-15
中醫(yī)的名詞解釋05-26
西方名詞解釋04-03
炒股名詞解釋03-16
薪酬制度的名詞解釋05-18
薪酬制度 名詞解釋05-18
解剖生理名詞解釋06-01