#include #include typedef struct node
node;
//交換相鄰的元素,如果是交換兩結點的值就很簡單,但是交換結點的話就。。
//以下是交換結點。
//如 1 2 3 4 5 ==> 2 1 4 3 5
node* swapadjacent(node *head1)
return head1;
}//建立列表
node* createlist(int *s,int len)
else
}return head;
}//列印元素
void pr_list(node* head)
}//釋放
void freelist(node* head)
printf("\n");
}int main(void) ;
int len=sizeof(s)/sizeof(*s);
node *head=createlist(s,len);
head=swapadjacent(head);
pr_list(head);
freelist(head);
return 0;
}
學習隨記六 單鏈表與雙鏈表交換相鄰結點比較
單鏈表結點結構體 typedef struct listnode1listnode1 雙鏈表結點結構體 typedef struct listnode2listnode2 單鏈表交換相鄰結點 必要操作是需要中間指標儲存指向關係,模擬用temp來交換兩個數 注意要有個頭指標來返回交換後的頭位址 lis...
交換鍊錶中相鄰的元素
成對交換鍊錶中相鄰的元素 直接交換鍊錶中兩個元素值,給元素交換賦值,而不用改變指標方向 但是這種方法中當單個節點中有很多欄位的時候 比如 name,age,效率較低!package suanfa.warppairs description 兩兩交換鍊錶中相鄰節點 通過直接交換元素值,不改變指標方向的...
單鏈表元素定位
6 2 單鏈表元素定位 12 分 本題要求在鍊錶中查詢第乙個資料域取值為x的節點,返回節點的位序。l是乙個帶頭結點的單鏈表,函式listlocate l linklist l,elemtype x 要求在鍊錶中查詢第乙個資料域取值為x的節點,返回其位序 從1開始 查詢不到則返回0。例如,原單鏈表各個...