数据结构尾插法怎么变成头插法?删除数据元素跟着鼠标移动案例要不要跟着改?

用头插法或尾插法建立带头节点的单链表。实现单链表上的插入删除查找修改计数输出等基本操作的代码_百度知道
用头插法或尾插法建立带头节点的单链表。实现单链表上的插入删除查找修改计数输出等基本操作的代码
head-&next=NULLtypedef struct lista{
struct lista *void insert(list *h);} int main(){
list *head=(list *)malloc(sizeof(list));void del(list *h)
其他类似问题
为您推荐:
单链表的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁君,已阅读到文档的结尾了呢~~
精品:数据结构单链表 建立单链表 单链表的建立与删除 建立一个单链表 c语言建立单链表 单链表的建立 怎么建立单链表 用c语言建立单链表 如何建立单链表 单链表
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
数据结构-尾插法建立单链表
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口怎么把尾插法输入改成头插法输入数字_百度知道
怎么把尾插法输入改成头插法输入数字
/zhidao/pic/item/bd315c6034a85edfb75ab.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="http.hiphotos://b.com/zhidao/wh%3D450%2C600/sign=5ea806ec37fae6cd0ce1a//zhidao/wh%3D600%2C800/sign=7f7e808ddaa1de43719c2/bd315c6034a85edfb75<a href="http://b.baidu&nbsp.baidu.hiphotos://b.jpg" esrc="http
提问者采纳
把else里面的后三句改成下面两句p-&next=q-&nextq-&next=p
提问者评价
其他类似问题
为您推荐:
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁数据结构(21)
#include &stdio.h&
#include &stdlib.h&
typedef struct List {
struct List * //指针域
void TailCreatList(List *L) //尾插法建立链表
List *s, *r;//s用来指向新生成的节点。r始终指向L的终端节点。
r = L; //r指向了头节点,此时的头节点是终端节点。
for (int i = 0; i & 10; i&#43;&#43;) {
s = (struct List*) malloc(sizeof(struct List));//s指向新申请的节点
s-&data = //用新节点的数据域来接受i
r-&next = //用r来接纳新节点
r = //r指向终端节点
r-&next = NULL; //元素已经全部装入链表L中
//L的终端节点指针域为NULL,L建立完成
void HeadCreatList(List *L) //头插法建立链表
//不用像尾插法一样生成一个终端节点。
L-&next = NULL;
for (int i = 0; i & 10; i&#43;&#43;) {
s = (struct List*) malloc(sizeof(struct List));
s-&next = L-& //将L指向的地址赋&#20540;给S;//头插法与尾插法的不同之处主要在此,
//s所指的新节点的指针域next指向L中的开始节点
//头指针的指针域next指向s节点,使得s成为开始节点。
void DisPlay(List *L) {
//打印节点
List *p = L-&
while (p != NULL) {
printf(&%d &, p-&data);
printf(&\n&);
int main() {
List *L1, *L2;
L1 = (struct List*) malloc(sizeof(struct List));
L2 = (struct List*) malloc(sizeof(struct List));
HeadCreatList(L1);
DisPlay(L1);
TailCreatList(L2);
DisPlay(L2);
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:31897次
排名:千里之外
原创:18篇
转载:22篇
(1)(4)(4)(2)(1)(1)(2)(7)(12)(5)(1)单链表的基本操作头插法尾插法插入删除查找定位输出_校园你我她论坛_天涯博客
校园你我她论坛()是一个集校园资讯,校园生活,校园考证等于一体的大学生校园论坛,旨在为校园你我她提供休闲娱乐,交流讨论的平台,是你我她必逛的大学生论坛!
今日访问:[$DayVisitCount$]
总访问量:508
开博时间:
博客排名:暂无排名
数据结构&单链表的基本操作&新建&头插法&尾插法&插入&删除&查找&定位&输出
源代码由校园你我她论坛原创,不足之处请见谅!
#include&stdio.h&
#include&malloc.h&
#include&process.h&&&&&&&&&&&&//或者&stdlib.h&&&exit();函数的声明
typedef&struct&node&&&&&&&&&&&//定义节点类型
&&&&&&&&char&
&&&&&&&&struct&node&*&&&&&&&&//因为上面结构体的类型名是struct&node&&&&&linklist是别名&
}&&&&&&&&&&&&&&&&&&&&//一般List顺序表,linklist链表
int&main()
&&&&&&&&int&a;
&&&&&&&&linklist&*
&&&&&&&&head=(linklist&*)malloc(sizeof(linklist));
&&&&&&&&printf("请先建立单链表!\n");&&&&&&&&
&&&&&&&&linklist&*rcrect(linklist&*head);&&&&&//调用尾插法
&&&&&&&&rcrect(head);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&/*linklist&*hcrect();&&&&&&&&&&&&&&&&//或者调用头插法
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&hcrect();*/
&&&&&&&&for(;;)
&&&&&&&&&&&&&&&&printf("\n您想要对此单链表表做何种操作:\n0.退出\t1.查找\t2.插入\t3.删除\n");
&&&&&&&&&&&&&&&&scanf("%d",&a);
&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&if(a&0||a&3)
&&&&&&&&&&&&&&&&&&&&&&&&printf("您输入的数字有误,请重新输入!\n");
&&&&&&&&&&&&&&&&if(a==0)&&&&&&&&//退出
&&&&&&&&&&&&&&&&&&&&&&&&exit(0);
&&&&&&&&&&&&&&&&if(a==1)
&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&linklist&location(linklist&*head);&&&//调用按序号查找函数
&&&&&&&&&&&&&&&&&&&&&&&&location(head);&&&&&&&&
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&&&&&if(a==2)
&&&&&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&&&&&&&&&linklist&inset(linklist&*head);&&&&&&//调用插入函数
&&&&&&&&&&&&&&&&&&&&&&&&inset(head);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&&&&&if(a==3)//调用删除函数
&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&linklist&delet(linklist&*head);&&&&&//调用删除函数
&&&&&&&&&&&&&&&&&&&&&&&&delet(head);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&&&&&return&0;
//1.尾插法建立单链表
linklist&*rcrect(linklist&*head)&&&//尾插法&&链接到已经建立好的单链表的末尾
&&&&&&&&linklist&*p,*
&&&&&&&&char&&&&&&&&&&&&&&&&&&&&&&//用于输入字符
&&&&&&&&last=&&&&&&&&&&&&&&&&&&&//head-&next=NULL;&&//链表的初始化操作&&链表的初始化就是为了让程序员能够获取链表的首地址
&&&&&&&&printf("请输入你要存储的字符,以#号结束:\n");
&&&&&&&&while(ch!='#')
&&&&&&&&&&&&&&&&p=(linklist&*)malloc(sizeof(linklist));
&&&&&&&&&&&&&&&&scanf("%c",&ch);
&&&&&&&&&&&&&&&&p-&data=&&&&&&&&&&&&&//每次都申请一个节点,数据域存放数据,指针域为空&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//&printf("%c\t",p-&data);&&可以用来测试存储是否正确&&
&&&&&&&&&&&&&&&&last-&next=p;&&&&
&&&&&&&&&&&&&&&&last=p;&&&&&&&&&&&&&&&&&//上一次的最后一个元素的地址赋给last
&&&&&&&&&&&&&&&&p-&next=NULL;&&&&&&&&
&&&&&&&&}&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&void&print(linklist&*head);&//调用输出函数
&&&&&&&&&&&&&&&&print(head);
&&&&&&&&&&&&&&&&return&
linklist&*hcrect()&&&&//头插法建立单链表&&插入到已经建立好的头结点和&第一个节点&之间
&&&&&&&&linklist&*head,*p;
&&&&&&&&char&&&&&&&&&&&&&//用于输入字符
&&&&&&&&head=(linklist&*)malloc(sizeof(linklist));
&&&&&&&&head-&next=NULL;&&&&&&&//链表的初始化操作&&链表的初始化就是为了让程序员能够获取链表的首地址
&&&&&&&&printf("请输入你要存储的字符,以#号结束:\n");
&&&&&&&&while(ch=getchar()!='#')
&&&&&&&&&&&&&&&&p=(linklist&*)malloc(sizeof(linklist));
&&&&&&&&&&&&&&&&scanf("%c",&ch);
&&&&&&&&&&&&&&&&p-&data=&&&//每次都申请一个节点,数据域存放数据,指针域为空
&&&&&&&&&&&&&&&&p-&next=head-&&&&&//head-&next为第一个节点的地址
&&&&&&&&&&&&&&&&head-&next=p;&&&&&&&&&&//头指针指向新建立的节点
&&&&&&&&&&&&&&&&printf("%c\t",p-&data);
&&&&&&&&}&&&&&&&&&&&&&&&&&&&
&&&&&&&&void&print(linklist&*head);
&&&&&&&&print(head);
&&&&&&&&return&
//2.输出函数函数
void&print(linklist&*head)&&
&&&&&&&&linklist&*p;
&&&&&&&&p=head-&
&&&&&&&&printf("\n你存储的数据为:\n");
&&&&&&&&while(p!=NULL)
&&&&&&&&&&&&&&&&printf("%c\t",p-&data);
&&&&&&&&&&&&&&&&p=p-&
//3.按序号查找函数
linklist&location(linklist&*head)
&&&&&&&&linklist&*p;
&&&&&&&&int&i,k=0;
&&&&&&&&p=
&&&&&&&&printf("\n请输入你要查找链表中第几个元素:\n");
&&&&&&&&scanf("%d",&i);&&&&&&&&
&&&&&&&&while(p&&k&i)
&&&&&&&&&&&&&&&&p=p-&
&&&&&&&&&&&&&&&&
&&&&&&&&if(k&i||!p)
&&&&&&&&&&&&&&&&printf("输入的序号有误,查找失败!\n");
&&&&&&&&&&&&&&&&exit(0);&&
&&&&&&&&else
&&&&&&&&&&&&&&&&printf("第%d个元素的值为:%c\n",i,p-&data);
&&&&&&&&return&*
//4.插入函数
linklist&inset(linklist&*head)
&&&&&&&&linklist&*p,*p1;&&&&&&&&
&&&&&&&&int&i,k=0;
&&&&&&&&char&
&&&&&&&&p=&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//不能为head-&next
&&&&&&&&printf("请输入你要在链表的第几个位置?\t插入什么元素?\n");
&&&&&&&&scanf("%d&%c",&i,&ch);&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&p1=(linklist&*)malloc(sizeof(linklist));&&&//新建一个节点
&&&&&&&&p1-&data=
&&&&&&&&p1-&next=NULL;&&&&&&&&
&&&&&&&&while(p&&k&i-1)&&&//找到要插入的位置
&&&&&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&&&&&&&&&p=p-&
&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&}&&&&&&&&
&&&&&&&&&&&&&&&&if(k&i-1||!p)
&&&&&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&&&&&&&&&printf("输入的序号有误,插入失败!\n");
&&&&&&&&&&&&&&&&&&&&&&&&exit(0);&&
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&&&&&else&
&&&&&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&&&&&&&&&p1-&next=p-&
&&&&&&&&&&&&&&&&&&&&&&&&p-&next=p1;
&&&&&&&&&&&&&&&&&&&&&&&&printf("插入后的新数据为:\n");&//输出插入后的新数据&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&p=head-&
&&&&&&&&&&&&&&&&&&&&&&&&while(p!=NULL)
&&&&&&&&&&&&&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&printf("%c\t",p-&data);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&p=p-&
&&&&&&&&&&&&&&&&&&&&&&&&}&
&&&&&&&&&&&&&&&&&&&&&&&&printf("\n");
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&&&&&&&&&&&&&return&*
//5.删除函数
linklist&delet(linklist&*head)
&&&&&&&&linklist&*p,*p1,*p2;
&&&&&&&&p=
&&&&&&&&int&i,k=0;
&&&&&&&&printf("请输入你要删除第几个元素:\n");
&&&&&&&&scanf("%d",&i);
&&&&&&&&while(p&&k&i-1)
&&&&&&&&&&&&&&&&p=p-&
&&&&&&&&&&&&&&&&
&&&&&&&&if(k&i-1||!p)
&&&&&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&&&&&&&&&printf("输入的序号有误,删除失败!\n");
&&&&&&&&&&&&&&&&&&&&&&&&exit(0);&&
&&&&&&&&&&&&&&&&}&&&&&&&&
&&&&&&&&&&&&&&&&else&
&&&&&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&&&&&&&&&p2=p-&
&&&&&&&&&&&&&&&&&&&&&&&&p-&next=p2-&
&&&&&&&&&&&&&&&&&&&&&&&&free(p2);
&&&&&&&&&&&&&&&&&&&&&&&&printf("删除后的新数据为:\n");&//输出插入后的新数据&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&p=head-&
&&&&&&&&&&&&&&&&&&&&&&&&while(p!=NULL)
&&&&&&&&&&&&&&&&&&&&&&&&{
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&printf("%c\t",p-&data);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&p=p-&
&&&&&&&&&&&&&&&&&&&&&&&&}&
&&&&&&&&&&&&&&&&&&&&&&&&printf("\n");
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&&&&&&&&&&&&&return&*
原文出自:校园你我她论坛编程语言专区:/forum.php?mod=viewthread&tid=980分类: |

我要回帖

更多关于 div变成行内元素 的文章

 

随机推荐