搜索
首页 教育/科学 职业教育

算法高手快过来 请教一道数据结构的算法题

算法具体描述如下:设以带头结点的双向循环链表L=(a1,a2,....,an).试写一个时间复杂度为O(n)的算法,将L改造成L=(a1,a3,...an,...,a4,a2)。要求写出你的算法思想。

全部回答

2010-11-10

0 0
  设:*h,*s,*p h=a1;p=h->next; h->next=h->next->next; h=h->next if(h=!null) { s=h->next;h->next=h->next->next; h=h-next; p->back=s;p=p->back; } //这时链表已被分成L1=(a1,a3,……an)和L2=(……,a4,a2)两个链 由于它们是双向链表,只需要把两个链表的头尾相连就行了 h->next=p。
  

类似问题换一批

热点推荐

热度TOP

相关推荐
加载中...

热点搜索 换一换

教育/科学
职业教育
院校信息
升学入学
理工学科
出国/留学
人文学科
外语学习
学习帮助
K12
职业教育
职业教育
会计资格考试
职业培训
远程教育
自考
司法考试
公务员考试
举报
举报原因(必选):
取消确定举报