部落格作業2 線性表

2022-05-19 23:44:11 字數 1444 閱讀 1844

定義陣列a存放序列

定義length存放序列長度,maxlength存放最長序列長度,start存放序列首元素下標,maxstart最長子序列首元素下標,flag判斷是否為序列首元素

for i = 1 to i < n

輸入a[i]

如果(a[i]>a[i-1]且flag==0)

start=i-1;flag=1;length+1;

如果(a[i]>a[i-1])length+1;

如果(maxlength

由於陣列定義的太小而錯誤

定義乙個鍊錶節點p = l;

if(l是空鍊錶)return -1

while(p->next不為空)p = p->next

l = l->next;

while(p不等l且l->next 不等 p)

如果(p->data != l->data)flag = 1跳出迴圈

endwhile

p = p->prior;l = l->next;

如果(l->next==p且p->data != l->data)flag = 1

如果 flag = 1 return 0

輸出格式錯誤

輸出格式錯誤

本週學習一般就寫寫**看看書,挺好的

線性表是資料在計算機中的物理儲存方式,主要有順序表,鍊錶,順序表中的各個元素位置是相鄰的,而鍊錶不是,他們各有各的優點吧

部落格作業2 線性表

定義變數n存放順序表長度,i,j 0控制迴圈,l 1存放子列長度,k,m,max存放最大子列長度,flag存放最長子列陣列下標,sum 0求和 scanf d n int a n 存放母列 b 100000 存放子列長度 for i 0 to n 輸入母列 end for for i 1 to n ...

部落格作業2 線性表

定義整型變數i作為迴圈變數,j用來儲存所刪除節點的個數 for i小於順序表長度時執行迴圈 if 順序表中第i個數大於mind且小於maxd j 否則l data i j l data i 本題第一次提交時用了while迴圈語句,結果編譯器判定是段錯誤,後來改為for迴圈時提交答案正確。void c...

部落格作業2 線性表

for i 0 to length 1 if j大於等於i length為k 剛開始把重新賦值的 放在了第二個for裡面。linklist p l 用p代替l while p next不為0 if m為0或者大於n 不存在返回 1 while j小於n m 1且p不為0 if p為0 返回 1 否則...