C++循环链表中进行元素的翻转
2017-10-22 20:03
183 查看
//循环链表的翻转函数 template<typename T> void circularchain<T>::reverse() { chainNode<T>*pr,*r; chainNode<T>*p = firstNode->next; //把链表分成两段 firstNode->next = firstNode; //从p里面拿出节点插入只有一个节点的链表,注意此只有一个节点的链表也是循环链表 pr= firstNode; //保存起初的起始位置,作为后面插入的末位置 while (p!=pr) { r = p->next; //保存好下一次要插入的元素 p->next = firstNode; //进行节点插入 pr->next=p; firstNode = p; p = r; } }
相关文章推荐
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- C++循环链表中进行元素的翻转
- 线性表的顺序表 实现,及应用-----西文排序+前m个元素和后n个元素进行整体互换+构造纯集合+有序表求纯集合+循环有序链表表示两集合的并集
- 每K个元素翻转一次链表,若最后剩余元素不足K个,不进行翻转(美团2014校招试题)
- 合并两个链表,两个表的元素交叉进行,合并之后合并后的链表变成空表
- 【数据结构】用C++实现单循环链表的各种操作(包括头删,尾删,插入,逆序,摧毁,清空等等)
- (C++版)链表(四)——实现双向循环链表创建、插入、删除等简单操作