1樓:網友
acm的題目,基本上每題都要用到陣列,連結串列的高效僅僅是在插入和刪除上,真的很少很少用。
如果遇到有大量插入刪除查詢的題目,往往有更好的儲存方法,比如線段樹,比如最大最小堆,等等。
而且,acm還很講究寫**的速度,陣列和連結串列,當然是用陣列寫起來快~~~
2樓:凱爾特人
需要訪問表內節點比較多則用順序表。
移動元素(插入、刪除)多則用連結串列。
當然也可以用靜態連結串列,即乙個結構體陣列,儲存各元素的前驅、值、後繼,讓順序表與連結串列結合,然而由於刪除元素多,會造成空間浪費,一般用於小資料,要根據題目具體情況而定,本人用靜態連結串列較多。
靜態連結串列相關。
3樓:網友
acm陣列一般用的較多,比較方便,很少用連結串列。除非實在不能用陣列來實現,否則儘量用陣列完成。連結串列主要是大小可變,可擴充套件,樓上說,刪除容易,但是刪除還是要定位。
而且acm題目,一般範圍都給的非常清楚了。特別是對於迷宮問題,還沒有找到比陣列表示更好的。
與順序表相比,連結串列的優勢是
4樓:網友
與順序表相比,單連結串列的優點是a.可節省儲存陵蠢局空間b.便於隨機訪問表中資料c.
刪除、插入操作移動節點速度快d.插入、刪除操作比較方便。答案d。
順序表相對於連結串列的優點是:()答案:隨機存取。
連結串列相對於順序表的優點是插入、刪除方便;缺點是儲存密度。答案:小尺讓;
與順序表相比連結串列有哪些優點?連結串列可以任意增刪,調序,不用在記憶體移動資料。資料在記憶體中也不必位於連續空間,長度可以動態變化。
引言順序表和連結串列都屬於線性表,它們都是用來儲存資料的結構。線性表:零個或多個資料元素的有限序列。
順序表即表示線性表的順序儲存,連結串列即表示線性表的鏈式儲存。順序表順序表:順序表底層是乙個陣列,它在邏輯上和物理結構上都是連續的。
因為我們可以按照下標進行各種操作,每個元素都是連續存放的。順序表按位查詢的時間複雜度為:o(1)順序表按值查詢的時間複雜度為:
o(n)中間插入、中間刪除的時間複雜度為:o(n)頭插、頭刪的時間複雜度為:o(n)尾插、尾刪的時間複雜度為:
o(1)。連結串列連結串列:連結串列是乙個由若干節點組成的結構,它在邏輯上是連續的,但在物理結構上是非連續的,或者說,記憶體上不是緊挨著的。
連結串列按位查詢的時間複雜度為:o(n)連結串列按值查詢的時間複雜度為:o(n)連結串列在找到指定元素的位置後,插入和刪除操作的時間複雜度為:
o(1)單連結串列在插入和刪除操作時,需要找到前驅域,這也是較為麻煩的。而雙向連結串列的插入和刪除操作效率就較為高效,因為雙向連結串列中的每個節點不僅儲存了後繼域,也儲存了前驅域。但顯檔和然,雙向連結串列是利用了更多的空間換取了時間。
連結串列與順序表的應用比較。
5樓:考試資料網
插入和刪除速度快,保留原有的型罩物理順序。缺點:查詢元素需要遍歷,因此不支援隨凱則機查詢。
主要應用於需要頻繁進行增加/刪除元盯租棚素,而查詢元素較少的程式。
缺點:插入和刪除比較慢,不可以即時增長長度。主要應用於需要大量訪問元素的,而增加/刪除元素較少的程式。
何時選用順序表 何時選用連結串列作為線性表的儲存結構為宜
墨汁諾 順序表的特點是按位訪問快,中間插入刪除慢,因此元素個數變動不大,經常按位置訪問適宜於順序儲存。順序表往往使用一組連續的記憶體,對固定元素的隨機存取 比如存取第幾個元素 很方便。因此更適合於存放需要多次修改的資料。連結串列的特點是隻能順序訪問,中間插入刪除快,因此適宜於元素個數變動較大,經常插...
簡述順序表和連結串列的優缺點和適用範圍
使用者時代 順序表 長度固定,必須在分配記憶體之前確定陣列的長度。儲存空間連續,即允許元素的隨機訪問。儲存密度大,記憶體中儲存的全部是資料元素。要訪問特定元素,可以使用索引訪問,時間複雜度為 o 1 要想在順序表中插入或刪除一個元素,都涉及到之後所有元素的移動,因此時間複雜度為 o n 順序表最主要...
「平行志願」和「順序志願」的區別是什麼
萬鼎星辰郭棟 平行志願是分數優先,順序志願是志願優先。連續志願服務是指在同一批入學申請中設立的許多高校都有乙個志願序列,它表示為 第一志願 第二志願 例如,第一志願學院和第二志願學院。同一所大學的志願者候選人在電腦上報名時會單獨排隊,然後根據分數從高到低向相應的大學報名。填寫時,順序自願填寫模式是乙...