經典演算法學習——單鏈表實現氣泡排序(帶頭結點)
阿新 • • 發佈:2019-01-03
核心程式碼如下:
Node *BubbleSort(Node *pNode){ int count = SizeList(pNode);//用來控制次數 Node *pMove; pMove = pNode->next; //遍歷次數為count-1 while (count > 1) { while (pMove->next != NULL) { if (pMove->element > pMove->next->element) { int temp; temp = pMove->element; pMove->element = pMove->next->element; pMove->next->element = temp; } pMove = pMove->next; } count--; //重新移動到第一個節點 pMove = pNode->next; } printf("%s函式執行,帶頭結點的單鏈表氣泡排序成功\n",__FUNCTION__); PrintList(pNode); return pNode; }