//單鏈表結構體
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 ...