單鏈表交換相鄰元素

2021-06-09 20:57:35 字數 642 閱讀 6474

#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。例如,原單鏈表各個...