link_list_test
link_list_test
h>
#include <stdlib.h>
#include <string.h>
typedef struct
{
ElemType data[MAXSIZE];
int length;
} SqList;
L.length = len;
for (int i = 0; i < len; i++)
{
L.data[i] = arr[i];
}
return true;
}
bool InitList(LinkList& L)
{
L = (LinkNode*)malloc(sizeof(LinkNode));
L->next = NULL;
return true;
}
bool DestroyList(LinkList& L)
{
LinkNode* p = L;
LinkNode* pNext = p->next;
free(p);
return true;
}
int LinkLen(LinkList L)
{
int len = 0;
LinkNode* p = L;
return len;
}
L = (LinkNode*)malloc(sizeof(LinkNode));
L->next = NULL;
return true;
}
L = (LinkNode*)malloc(sizeof(LinkNode));
L->next = NULL;
p = L;
p->next = NULL;
return true;
}
printf("\n");
}
int AbsCompute(int x)
{
if (x < 0)
return (-x);
else
return x;
}
bool func(LinkList& L)
{
if (L == NULL)
{
printf("缺少头节点\n");
return false;
}
if (L->next == NULL)
{
printf("链表为空表\n");
return false;
}
if (L->next->next == NULL)
{
printf("链表只有一个带数据的节点,逆置前后不变\n");
return true; // 直接返回即可
}
L->next = p;
return true;
}
int main()
{
// ElemType arr[] = { 1, 2, 2, 2, 2, 3, 3, 4, 4, 5 };
ElemType arr[] = { 4, 2, 3, 4, 3, 6, 7, 3, 11, 3, 1 };
// ElemType arr[] = { 1 };
int len = sizeof(arr) / sizeof(arr[0]);
LinkList L;
if (ListTailInsert(L, arr, len))
PrintLinkList(L);
func(L);
PrintLinkList(L);
// PrintArr(arr, len);
return 0;
}