在單鏈表中,已知q所指結點是p所指結點的直接前驅,若在q

2021-09-01 21:18:36 字數 1805 閱讀 1908

1樓:匿名使用者

q->next表示結點中存放的指標,該指標用來指向某個結點。

原來的連線關係是q->next=p,意思是q中存放的指標的值是p,即q指向p。

比如:原來排隊p在q的後面,現在要插乙個s在他們中間,需要做的事就是把原來p,q二人的聯絡轉化為p,s,q三人的聯絡,先讓p指向s,即q->next=s;然後讓s指向q,即s->next=p。

2樓:擺小毒

你是題幹打反了吧,明明是p是q的直接前驅,答案才有比較

3樓:冼霖卯水荷

p->next=s->next;s->next=p

4樓:匿名使用者

a s->next=p->next; p->next=s; b q->next=s; s->next=p;

c p->next=s->next; s->next=p; d p->next=s; s->next=q;

5樓:姜子牙有點冷

選c, 不要被a忽悠了,正確是 s->next = p; q->next =s;

刪除結點操作

刪除操作是將單鏈表的第i個結點刪除。先檢查刪除位置的合法性,然後查詢表中第i-1個結點,即被刪結點的前驅結點,再將其刪除。其操作過程如圖2-7所示。

假設結點*p為找到的被刪結點的前驅結點,為了實現這一操作後的邏輯關係的變化,僅需修改*p的指標域,即將*p的指標域next指向*q的下一結點。

在乙個單鏈表中p所指結點之前插入乙個s(值為e)所指接點時,可執行如下操作

6樓:匿名使用者

q=head;

while(q && q->next!=p)//迴圈結束時q後面正好是需要找的p 或者q為空表示連結串列中沒有pif (q)

在一單鏈表中,已知q所指的結點是p所指結點的前驅結點,若在q和p之間插入s結點,則執行( )。

7樓:匿名使用者

q->next表示結點中存放的指標,該指標用來指向某個結點。

原來的連線關係是q->next=p,意思是q中存放的指標的值是p,即q指向p。

比如:原來排隊p在q的後面,現在要插乙個s在他們中間,需要做的事就是把原來p,q二人的聯絡轉化為p,s,q三人的聯絡,先讓p指向s,即q->next=s;然後讓s指向q,即s->next=p。

8樓:匿名使用者

答案應該是 q->next=s,s->next=p吧

q所指的結點是p所指結點的前驅結點,那麼q是排在p前面

你插入的s節點應該只有乙個 怎麼還要把s->next賦值給p->next

9樓:匿名使用者

q所指的結點是p所指結點的前驅結點;

據以上題意,q是p的前趨接點但不是直接前趨接點,

執行q->next=s;s->next=p;它可以在q和p之插入s結點,但原q和p之間的結點被去掉了。

10樓:匿名使用者

q的下乙個節點為s,s的下乙個節點為p

11樓:匿名使用者

答案錯了,s開始時不是沒有進來這些連結串列中嗎,怎麼能賦值給q->next呢,答案是

s=q->next;p=p->next;s->next=p;

q所指的結點是p所指結點的前驅結點,那麼q是排在p前面,那麼就是把q的下乙個結點賦給s(s=q->next),但是由於s進入,則p的結點要向後面移動一位,所以

p=p->next,最後要把s的後面一位和p接上,所以s->next=p

設指標變數p指向單鏈表中的結點A,現在需要刪去結點A,有哪些步驟,可以給我畫個圖讓我明白些嗎?急求

從head節點開始搜尋,找到a的前驅節點b,即b next a將a的前驅節點的後繼節點修改為a的後繼節點即b next a next 釋放a佔用的空間,即free a q p next p data q data p next q next free q 4.設指標變數p指向單鏈表中結點a,指標變數...

在n個結點的順序表中,演算法的時間複雜度是O1的操作是

答案是a.假設順序表l,長度為n,求第i個節點l i 直接前驅l i 1 因此為o 1 答案b需要移動n i個節點,因此為o n 答案c也需要移動n i個節點 答案d根據排序方法不同最慢o n 2 最快o nlogn 對於順序儲存的線性表,訪問結點和增加 刪除結點的時間複雜度為?答案是o 1 和o ...

如圖已知在ABC中,P是邊BC上的動點,PQ

1 自己畫圖,不難證明三角形pbq與三角形cba相似,所以角bqp 角a bp bc pq ac bq ba,可以推出pq 5x 8 aq 10 5x 8,然後根據餘弦定理bc 2 ab 2 ac 2 2ab ac cosa,推出cosa 7 25,推出sina 24 25,所以sinaqp sin...