p->next)
{
if(p->next->data==element)
{
Node *t = p->next;
p->next = p->next->next;
free(t);
break;
}
p = p->next;
}
return OK;
}
}
使用单链表实现数制转换(1-10进制):
//数制转换(1-10进制)
void transCodeR(int num,int r)
{
linkedList L = initList();
L->data = -1;
Node *top = NULL;
int i;
while(num>0)
{
i = num%r;
top = (Node *)malloc(sizeof(Node));
top->data = i;
top->next = L;
L = top;
num = num/r;
}
printf("The result is: ");
while(top->data!=-1)
{
printf("%d ",top->data);
top = top->next;
}
}
测试:
int main()
{
int n = 0;
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList La = createListT(n);
printf("Traversal the list a:\n");
traversalList(La);
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList Lb = createListT(n);
printf("Traversal the list b:\n");
traversalList(Lb);
traversalList(mergeDecline(La,Lb)); //Merge
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList Ld = createListT(n);
traversalList(Ld);
deleteRepeatingNode(Ld); //delete repeating node
traversalList(Ld);
int index,element;
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList Le = createListT(n);
traversalList(Le);
printf("Please enter the index:\n");
scanf("%d",&index);
printf("Please enter the element:\n");
scanf("%d",&element);
insertElementIntoX(Le,index,element); //insert element into index x
traversalList(Le);
int index;
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList Lf = createListT(n);
traversalList(Lf);
printf("Please enter the index:\n");
scanf("%d",&index);
deleteElementByIndex(Lf,index); //delete element by index
traversalList(Lf);
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList Lg = createListT(n);
traversalList(Lg);
sortFSL(Lg);//sort from small to large
traversalList(Lg);
int x;
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList Lh = createListT(n);
traversalList(Lh);
printf("Please enter the value:\n");
scanf("%d",&x);
deleteAGTX(Lh,x);//P3-3-2-3-1 删除所有元素值大于x的结点
traversalList(Lh);
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList Li = createListT(n);
traversalList(Li);
negativePriority(Li);//负数在前排序
traversalList(Li);
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList Lj = createListT(n);
traversalList(Lj);
_2014_T6(Lj);//2014真题-数据结构6
traversalList(Lj);
printf("Please enter the length:\n");
scanf("%d",&n);
linkedList Lk = createListT(n);
traversalList(Lk);
_2015_T6(Lk);//2015真题-数据结构6
traversalList(Lk);
printf("Please enter the len