Java数据库单链表疑问

Java数据库单链表疑问,第1张

链表的插入问题:

q = new DLinkNode(x)

q.perv = p.prev

q.next = p

p.prev.next=q

p.prev =q

q.perv = p.prev

先把q的前一个结点=p的前一个结点

q.next = p

先把q的下一个结点=p

这是在q前面插入了p点前

p.prev.next=q

把以前P当个下一个结点的点 的下一个结点改成Q

p.prev =q

把P的前一个结点改成Q

相当于从p前面砍一刀再把两端的绳子绑在q结点上

完成

你首先要建立一个链表啊,我给你写个简单的程序,你可以参考一下:

#include<stdio.h>

#include<malloc.h>

#define ok 1

#define error 0

typedef int Status

typedef struct test

{

int a

test *next

}test,*ptest

Status create(ptest head)

{

if(!head)

{

return error

}

ptest p = head

while(1)

{

ptest q = p

p->next = (ptest)malloc(sizeof(test))

p = p->next

printf("input number:")

scanf("%d",&p->a)

if(p->a == 0)

{

q->next = NULL

free(p)

return ok

}

}

return error

}

Status output(ptest head)

{

if(!head)

{

return error

}

for(ptest p = head->nextp != NULLp = p->next)

{

printf(" %d ",p->a)

}

return ok

}

Status main()

{

test head

if(create(&head))

{

printf("链表创建成功!!!\n\n")

if(output(&head))

{

printf("输出成功!!")

}

else

{

printf("输出地失败!!!")

}

}

else

{

printf("链表创建失败!!!\n\n")

return error

}

return ok

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6763229.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存