C 連結串列前n個是不是中心對稱就像 arrfrra
阿新 • • 發佈:2018-11-01
//結構體
typedef struct Node {
ElementType data;
struct Node * next;
} LNode, * LinkNode;
//連結串列前n個是不是中心對稱
Status isSymmertricLink(LinkNode L, int n){
//本來要一個數組是最好的,無奈C語言不支援這個變數建陣列,得用順序表可以代替這用
//也就是不用靠next找下個,得需要一個連續儲存才行
LinkNode p = L->next;
ElementType * arr = (ElementType *)malloc(sizeof(ElementType)*n);
int i;
for (i = 0; i < n; i++) {
if(p){
*(arr+i) = p->data;
p = p->next;
}else
{
return ERR;
}
}
//看看到底是不是對稱,一個不是也不行
for (i = 0; i < n/2; i++) {
if (*(arr+i) != *(arr+n-i-1)){
return ERR;
}
}
return OK;
}