1樓:匿名使用者
30分只給思路,不寫具體演算法了。
這個事可以有兩種方式完成:
1、先對錶排序,之後只一次遍歷表、其間將重複(與前個表項值相同的)元素剔除;
2、不排序,直接對每個元素都遍歷一次全表,剔除重複元素。
顯然方式1較好。
按方式1進一步細說:
1、線性表排序(此處不討論排序方式)要利用表本身的特點,排序只動指標、不動實際資料,這樣效率高。
2、已排序的表,找重複元素時,只遍歷一次即可。具體可設一個臨時指標t,記住上次的表項,與當前要判斷的表項c比較,如果t指向的表項的數值與c表項數值相同(即c是重複的),則剔除c表項(就是將t的下一表項的指標設定為c的下一表項指標);如果t表項與c不同,則更新t的指標使之指向c,這樣下個元素的比較就是與現在的c表項比較了。
2樓:天使的喵
#include
#define maxsize 100
typedef int elemtype; //順序表中的元素以值遞增的順序排列,刪除順序表中所有相同的多餘元素
typedef struct //使操作後順序表中所有元素的值均不相同
sqlist;
void creat_sqlist(sqlist *l,int n)}int del_sqlist(sqlist *l)if(count!=0)
}l->length=n;
}void print_sqlist(sqlist *l)}void main()
3樓:牛牛a哥
#include"stdio.h"
#include"malloc.h"
#include"iostream.h"
typedef int status;
typedef int elementype;
#define initsize 100
#define increment 2
struct sqlist
;//建立連結串列,並排列資料
<<"排序成功"< return 1; --l.length; free(&e); j--; }return 1; < return 1; }int main() 設計一個演算法,將線性表中重複結點刪除,線性表用順序儲存結構儲存。 4樓:牛牛a哥 free(&e); j--; }return 1; } 這只是刪除重複資料的演算法 線性儲存結構就是順序儲存結構嗎?線性表是線性儲存結構嗎? 5樓:根鬧米 不是,他們的關係可以如圖所示。線性表包括順序儲存結構和鏈式儲存結構。 線性表的劃分是從資料的邏輯結構上進行的。線性指的是在資料的邏輯結構上是線性的。即在資料元素的非空有限集中 (1) 存在唯一的一個被稱作「第一個」的資料元素,(2) 存在唯一的一個被稱作「最後一個」的資料元素,(3) 除第一個外,集合中的每個資料元素均只有一個前繼元素,(4)除最後一個外,集合中的每個資料元素均只有一個後繼元素。 那麼對於線性表,從儲存結構上分,可以有順序儲存結構和鏈式儲存結構。順序儲存結構包括順序表、順序佇列和順序棧;鏈式儲存結構包括連結串列、鏈佇列和鏈棧。 6樓: 線性結構的資料在儲存結構方面,既可能是順序儲存,也可能是鏈式儲存。 線性表是線性結構,也是順序儲存結構。 拓展資料:而資料的儲存結構只有兩種:順序儲存結構和鏈式儲存結構,這兩種儲存結構,前面一個是利用資料元素在儲存器中的相對位置表示其邏輯結構,另外一個是用指標來表示其邏輯關係。 線性表的順序儲存結構是一種隨機存取的儲存結構線性表的鏈式儲存結構,是一種物理儲存單元上非連續、非順序的儲存結構 7樓:樹木愛水閏 一、具體分析 1、線性結構的資料在儲存結構方面,既可能是順序儲存,也可能是鏈式儲存。 2、線性表是線性結構,也是順序儲存結構 4、而資料的儲存結構只有兩種:順序儲存結構和鏈式儲存結構,這兩種儲存結構,前面一個是利用資料元素在儲存器中的相對位置表示其邏輯結構,另外一個是用指標來表示其邏輯關係。 1、資料結構是計算機儲存、組織資料的方式。資料結構是指相互之間存在一種或多種特定關係的資料元素的集合。通常情況下,精心選擇的資料結構可以帶來更高的執行或者儲存效率。 資料結構往往同高效的檢索演算法和索引技術有關。 2、資料的物理結構是資料結構在計算機中的表示(又稱映像),它包括資料元素的機內表示和關係的機內表示。由於具體實現的方法有順序、連結、索引、雜湊等多種,所以,一種資料結構可表示成一種或多種儲存結構。 3、資料元素的機內表示(映像方法): 用二進位制位(bit)的位串表示資料元素。通常稱這種位串為節點(node)。 當資料元素有若干個資料項組成時,位串中與個資料項對應的子位串稱為資料域(data field)。因此,節點是資料元素的機內表示(或機內映像)。 4、意義:在許多型別的程式的設計中,資料結構的選擇是一個基本的設計考慮因素。許多大型系統的構造經驗表明,系統實現的困難程度和系統構造的質量都嚴重的依賴於是否選擇了最優的資料結構。 許多時候,確定了資料結構後,演算法就容易得到了。有些時候事情也會反過來,我們根據特定演算法來選擇資料結構與之適應。不論哪種情況,選擇合適的資料結構都是非常重要的。 8樓:匿名使用者 1、資料結構是計算機儲存、組織資料的方式。資料結構是指相互之間存在一種或多種特定關係的資料元素的集合。通常情況下,精心選擇的資料結構可以帶來更高的執行或者儲存效率。 資料結構往往同高效的檢索演算法和索引技術有關。 2、資料的物理結構是資料結構在計算機中的表示(又稱映像),它包括資料元素的機內表示和關係的機內表示。由於具體實現的方法有順序、連結、索引、雜湊等多種,所以,一種資料結構可表示成一種或多種儲存結構。 3、資料元素的機內表示(映像方法): 用二進位制位(bit)的位串表示資料元素。通常稱這種位串為節點(node)。 當資料元素有若干個資料項組成時,位串中與個資料項對應的子位串稱為資料域(data field)。因此,節點是資料元素的機內表示(或機內映像)。 4、意義:在許多型別的程式的設計中,資料結構的選擇是一個基本的設計考慮因素。許多大型系統的構造經驗表明,系統實現的困難程度和系統構造的質量都嚴重的依賴於是否選擇了最優的資料結構。 許多時候,確定了資料結構後,演算法就容易得到了。有些時候事情也會反過來,我們根據特定演算法來選擇資料結構與之適應。不論哪種情況,選擇合適的資料結構都是非常重要的。 9樓:earth千尋 線性結構就是線性表,什麼叫線性結構裡有線性表。 10樓:倡熒頒娩 這個世界不相信眼淚 我知道失去你www 仍然看著水花兒在綠草茵茵盪漾禱 若一個線性表l採用順序儲存結構儲存,其中所有元素為整數,設計一個演算法,刪除元素值在【x,y】之間的 11樓:淚淚控 採用一趟快排的思想,通過兩端掃描,可以做到 若一個線性表採用順序儲存結構儲存,設計演算法,刪除元素值在x,y之間的所有元素,要求時間複雜度為o(
30 12樓:翎 直接刪吧,沒說排序就用不著排了,更何況排了時間複雜度就會到nlgn,反而浪費時間 用順序儲存結構設計一個演算法,僅用一個輔助結點實現將線性表中的節點迴圈右移k位的運算,並分析演算法的事件
20 13樓:紅玫 int move(sequenlist *l) return (1);} 若一個線性表l採用順序儲存結構儲存,其中所有元素為整數.設計一個演算法,刪除元素值在[x,y]之間的 14樓:宛丘山人 l.length=l.length-d_num;} 你是數學專業吧?我估計很難有人給你滿意的答案。既然你的分數懸賞出去就不能收回來了,倒不如給我,總比一無所獲好吧?這樣也能靜下心來完成 祝你的 取得成功!去專業網看看吧 這裡也只能給你一點意見了 視實際題目而定!並不覺對!中可以提到應靈活應用!急!如何求演算法的時間複雜度 這演算法是常數階的,也就是o... 設原來mg晶體中有nahco3 amol na2co3 xh2o bmol 那麼根據。nahco3 hcl nacl h2o co2 氣體 na2co3 xh2o 2hcl 2nacl x 1 h2o co2 氣體 因為消耗的hcl為。所以有a 2b 因此n na n cl n hcl 根據方程式有... 你好,一般第二批錄不到第三批還是可以錄取你的,不過這裡面有一個時間差,比方說樓主二本未上在你填報的三本院校開始檢索的時候你已被二本院校退檔你就可以被三本學校提檔,但是如果是在三本檢索完才被退檔,樓主就會面臨落榜,希望我的回答對你有幫助,最後祝你考個滿意的學校!不會,二本的第一志願很重要,你沒有被二本...急!急!!急!!!幾種演算法複雜度分析
化學計算題,急急急
急急急急急急!不到二本線填報了二本志願錄取不了會影響三本的志願嗎