關於單鏈表

2021-07-08 12:47:48 字數 1104 閱讀 8145

//單鏈表結構體

typedef struct student

node;

//建立單鏈表

node *create()

else

p=head;

while(cycle)

else

}//head=head->next;

p->next=null;

//printf("\n yyy %d",head->data);

return (head);

}//單鏈表測長

int length(node *head)

p=head;//把頭結點算上

while(p!=null)

return (n);

}//單鏈表列印

void print(node *head)

}//刪除第乙個值為num的節點

node* del(node* head,int num)

if (p1->data == num)

else

}else

if(p0->data <= p1->data)

else

}//尾部(最大的值)

else

return head;

}//排序

node* sort(node* head)

p = head;

for (int j = 1;jdata > p->next->data)

p = p->next;

} }return head;

}//逆置

node* reverse(node* head)

p1 = head;

p2 = head->next;

while (p2)

head->next = null;

head = p1;

return head;

}int _tmain(int argc, _tchar* argv)

{ node *p = create();

cout<<"建立後"<[c++面試題]之單鏈表 - it笨笨 -

c語言單向鍊錶的建立

鍊錶,頭指標,頭結點

關於單鏈表逆置

逆置單鏈表演算法 整個過程就是圍繞這改變節點的指標域這一問題展開。具體實現 1.兩個節點指標 分別指向相鄰的兩個節點 2.儲存推進指標域的值 3.改變指標域 4.推進 如此迴圈 直到乙個節點指標指向null 另乙個節點指標指向尾節點。linklist reserver linklist head 條...

關於單鏈表的逆序

昨天的課後習題出現了乙個單鏈表的逆序問題,作為乙個志在成為程式媛的我,寫了我人生中的第一篇部落格。題目要求是 逆轉鍊錶,並返回逆轉後的頭結點。我們先考慮一下對於鍊錶逆序時可能會出現的情況 對於乙個空鍊錶 很明顯沒有資料,沒有內容,不需要逆序,之前return 對於只有乙個節點的鍊錶我們也是不需要考慮...

關於單鏈表的幾道題

思路 建立三個工作指標p,q,r,然後p遍歷整個鍊錶,p每到乙個結點,q就從這個結點往後遍歷,並與p的數值比較,相同的話就free掉那個結點.刪除單鏈表中重複結點的演算法 linklist removedupnode linklist l else q q next p p next return ...