当前位置: 首页 > news >正文

网站建设 模板/在线seo诊断

网站建设 模板,在线seo诊断,深圳市9号文,电子商务平台排名可以用递归的方法求链表的长度。看了下代码,你创建链表的函数写的有问题。给你个链表操作的例子吧。代码如下:#include#include#includeusing namespace std;typedef struct node{int data;struct node *next;}*PNODE;PNODE Create_list(void){int i;int…

可以用递归的方法求链表的长度。

看了下代码,你创建链表的函数写的有问题。给你个链表操作的例子吧。代码如下:

#include

#include

#include

using namespace std;

typedef struct node

{

int data;

struct node *next;

}*PNODE;

PNODE Create_list(void)

{

int i;

int a[]= {1,2,3,4,5,6,8,9,10,11,12,13,14,15,16,17,18,19,20,21};

PNODE head=(PNODE)malloc(sizeof(node));

if(NULL==head)

{

printf("内存分配失败,程序终止。\n");

exit(-1);

}

PNODE tail=head;

tail->next=NULL;

for(i=0; i<20; i++)

{

PNODE pnew=(PNODE)malloc(sizeof(node));

if(NULL==pnew)

{

printf("内存分配失败,程序终止。\n");

exit(1);

}

pnew->data=a[i];

pnew->next=NULL;

tail->next=pnew;

tail=pnew;

}

return head;

}

//传入链表的首地址,不是头指针的地址,相当于head->next

int Count_list(PNODE p)//用递归的方法求链表的长度

{

if(p==NULL) return 0;

else return (1+Count_list(p->next));

}

int Length_list(PNODE head)

{

int n=0;

PNODE p=head;

if(head==NULL) return 0;

while(NULL!=p->next)

{

n++;

p=p->next;

}

return n;

}

bool Insert_list(PNODE head,int pos,int value)//在pos位置上插入一个值为value的结点

{

PNODE p=head;

int i=0;

while(NULL!=p->next && i

{

p=p->next;

i++;

}

if(i>pos-1 && NULL==p)

return false;

PNODE pnode=(PNODE)malloc(sizeof(node));

if(NULL==pnode)

{

printf("内存分配失败,程序终止。\n");

exit(-1);

}

pnode->data=value;

pnode->next=p->next;

p->next=pnode;

return true;

}

bool Delete_list(PNODE head,int pos)//删除pos位置上的结点

{

PNODE p=head;

int i=0;

while(NULL!=p->next && i

{

p=p->next;

i++;

}

if(i>pos-1 && NULL==p)

return false;

PNODE node= p->next;//记录要删除的节点指针

p->next =node->next;

node->next=NULL;//将删除的节点的指针置为NULL

free(node);//释放删除的结点

return true;

}

void Display_list(PNODE head)//显示链表的内容

{

PNODE p=head;

while(NULL!=p->next)

{

printf("%d ",p->next->data);

p=p->next;

}

}

void Free_list(PNODE head)//释放链表

{

PNODE f,p=head->next;

free(head);

int i=0;

while(NULL!=p)

{

i++;

printf("%d ",p->data);

f=p->next;

free(p);//释放链表中的结点

p=f;

}

printf("\n%d个指针全部释放完毕!\n\n",i);

}

int main(void)

{

PNODE head=Create_list();//创建链表并返回链表的头指针

printf("创建的链表内容如下:\n");

Display_list(head);

printf("\n链表的长度为:%d",Count_list(head->next));

printf("\n链表中结点的个数为:%d\n",Length_list(head));

printf("\n插入结点之后的链表内容如下:\n");

Insert_list(head,7,7);//在位置7的地方插入结点值为7的结点

Insert_list(head,13,72);

Insert_list(head,15,73);

Insert_list(head,17,74);

Insert_list(head,19,75);

Insert_list(head,23,76);

Display_list(head);

printf("\n链表的长度为:%d",Count_list(head->next));

printf("\n链表中结点的个数为:%d\n",Length_list(head));

printf("\n删除结点之后的链表内容如下:\n");

Delete_list(head,11);//删除位置11处的结点

Display_list(head);

printf("\n链表的长度为:%d",Count_list(head->next));

printf("\n链表中结点的个数为:%d\n\n",Length_list(head));

Free_list(head);//释放链表

return 0;

}

[本帖最后由 303770957 于 2013-9-13 02:41 编辑]

6f83fddf9cb9ff6843fffd45e1807199.gif

♂ 死后定当长眠,生前何须久睡。♀

http://www.jmfq.cn/news/5166505.html

相关文章:

  • 做pc端网站行情/北京seo报价
  • 哪个行业最容易做网站/今日重大财经新闻
  • 企业局域网的组建与网站建设论文/武汉搜索引擎排名优化
  • 华宇网站建设/海外seo网站推广
  • 手机网站系统下载/推广网站
  • 网站建设分析/夫唯seo怎么样
  • 外贸免费开发网站建设/创建自己的网站
  • 免费发做网站/厦门seo推广公司
  • 网站标识描述可以填关键词吗/爱站权重
  • 做网站维护的是什么公司/百度识图在线识别
  • 做服装搭配的流行趋势网站/seo赚钱吗
  • 南阳企业做网站/网站推广属于哪些
  • 用dw做教学网站/杭州小程序建设公司
  • 相城区建设局网站/文山seo
  • Php做网站要求/搜索引擎优化课程
  • 软件开发项目名称/seo关键词快速排名前三位
  • 微信公众号的微网站怎么做/苏州搜索引擎排名优化商家
  • 网站怎样做权重/上海网络优化seo
  • 响应式网站多少钱/百度推广的优化软件
  • 政务内网网站建设方案/公司网站建设平台
  • 中国十大网站建设/小红书关键词优化
  • flash新手入门简单动画制作/seo营销方案
  • 网站建设怎么找客户/个人怎么做网络推广
  • 褚橙的网站建设/网店推广方案策划书
  • 做凸透镜成像的网站/石家庄seo扣费
  • 北京住房和城乡建设委员会网站/全球网络营销公司排行榜
  • 网站的 联系我们怎么做/搜索引擎收录查询
  • 周口seo优化/张家港seo建站
  • 北京pc28网站/app推广方式
  • 最好的营销网站/whois域名查询