建表:如果輸入個數為0直接退出程式;否則把每乙個a[i]賦值給l->data,最後給長度賦值n
展示:for i=0 to l->length-1
else
}刪除相同元素:
for i=1 to l->length-1
if(k>j) 把l->data[i]改值為l->data[++j]
} 長度重新定義為j+1
建表:
為l申請空間
l->next置空
p儲存頭指標l
for i=1 to n
倒置:p保留l->next
l->next 置空重構鍊錶
while(!p)
輸出:除最後乙個元素外其他其他於是輸出帶空格
上課老師有說過類似題目
建表:
尾插法建表
合併:p1=l1->next;
p2=l2->next;
p=l;
while(p1和p2都沒有指向null)
else
} while(p1)
while(p2)
p->next=null;
輸出:除最後乙個元素外其他其他於是輸出帶空格
第一次錯誤10分,只有樣例正確,3個測試點錯誤,鍊錶為空也沒有考慮,然後就是有並列,我仔細再看一遍題目發現題目要求是把兩個鍊錶合併,並不用刪掉重複元素,去掉刪除函式。
還有就是大規模輸入,自己不懂錯誤在哪 ,嘗試這把兩個陣列的長度加大也沒有用
計畫是要從周一開始每天呼出一點時間做一題pta哪怕是乙個函式也好,可是每天只有晚上有時間,而晚上還要晚自習,也有其他作業要寫,所以只是再週三寫了一點pta,其他的基本再週末做的,總感覺時間沒有規劃好。不是很滿意。下週盡量能夠再晚上之前把其他作業做完,然後選擇性完成pta內容
部落格作業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 否則...