[問題] 請問雙向鏈結如何改成由大到小排序?
請問下面雙向鏈結用來建立鏈結的一部分
請問我該怎麼改, 才可以讓陣列可以由小到大
或是由大到小排序在雙向鏈結上面????
請問有強者可以幫我改一下嗎???
dlink createdlist(int *array,int len)
{
dlink head; /* 雙向串列的指標 */
dlink before; /* 前一節點的指標 */
dlink new_node; /* 新節點的指標 */
dlink current;
int i;
/* 建立第一個節點, 和配置節點記憶體 */
head = ( dlink ) malloc(sizeof(dnode));
if ( !head ) return NULL; /* 檢查記憶體指標 */
head->data = array[0]; /* 建立節點內容 */
head->front = NULL; /* 設定指標初值 */
head->back = NULL; /* 設定指標初值 */
before = head;
current=before->front; /* 指向第一個節點 */
//int list[10] = {75,98,77,10,57,50,40,81,91,99}; /* 陣列內容 */
for ( i = 1; i < len; i++ ) /* 用迴圈建立其它節點 */
{ /* 配置節點記憶體 */
new_node = ( dlink ) malloc(sizeof(dnode));
new_node->data = array[i]; /* 建立節點內容 */
new_node->front = NULL; /* 設定指標初值 */
new_node->back = before; /* 將新節點指向前節點 */
before->front = new_node; /* 將前節點指向新節點 */
before = new_node; /* 新節點成為前節點 */
}
return head; /* 傳回串列起始指標 */
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.230.54.135
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1530124472.A.710.html
→
06/28 02:38,
7年前
, 1F
06/28 02:38, 1F
→
06/28 07:10,
7年前
, 2F
06/28 07:10, 2F
推
06/28 07:23,
7年前
, 3F
06/28 07:23, 3F
→
06/28 07:24,
7年前
, 4F
06/28 07:24, 4F
→
06/28 07:32,
7年前
, 5F
06/28 07:32, 5F
→
06/28 09:18,
7年前
, 6F
06/28 09:18, 6F
推
06/28 09:33,
7年前
, 7F
06/28 09:33, 7F
→
06/28 09:33,
7年前
, 8F
06/28 09:33, 8F
→
06/28 09:48,
7年前
, 9F
06/28 09:48, 9F
→
06/28 09:48,
7年前
, 10F
06/28 09:48, 10F
→
06/28 09:49,
7年前
, 11F
06/28 09:49, 11F
推
06/28 10:58,
7年前
, 12F
06/28 10:58, 12F
→
06/28 17:56,
7年前
, 13F
06/28 17:56, 13F