向有序循环单向链表中插入节点
2015-02-27 00:33
176 查看
给定一个有序的循环单向链表和一个整数,要求将以该整数为值的新节点插入原链表中,新链表要求仍然有序。
class Node { public: Node(int v) { value = v; next = NULL; } int value; Node *next; }; void insertNode(Node* aNode, int x) { if (aNode == NULL) { aNode = new Node(x); aNode->next = NULL; return; } Node *start = aNode; Node *cur = aNode; Node *next = aNode->next; while (next != start) { if ((x >= cur->value) && (x <= next->value)) { break; } if (((x >= cur->value) || (x <= next->value)) && (cur->value >= next->value)) { break; } cur = next; next = cur->next; } Node *newNode = new Node(x); newNode->next = next; cur->next = newNode; }
相关文章推荐
- 向循环有序链表内插入一个节点
- 单向循环链表的有序插入 对单向循环链表head插入元素 链表保持有序
- 链表(篇1)循环有序链表中插入节点
- 单向链表之有序插入节点(C语言实现)
- 有序的循环链表中插入结点
- 编程算法 - 有序双循环链表的插入 代码(C)
- 单向循环链表的创建/插入/删除/输出算法
- 复习下C 链表操作(单向循环链表、查找循环节点)
- 有头节点单向循环链表
- 环形有序链表插入节点
- (C语言版)链表(二)——实现单向循环链表创建、插入、删除、释放内存等简单操作
- 实现一个 链表 有序插入新节点
- 【C与指针】有序单链表插入节点
- 单向链表中,如何在给定节点前快速插入一个节点?
- 重温数据结构:有序循环链表的插入
- 带表头节点的循环单向链表
- 单向循环链表的头插,尾插,中间插以及删除节点
- 10实现有序双向循环链表的插入操作
- [华为机试练习题]49.向升序单向链表中插入一个节点
- (C语言版)链表(二)——实现单向循环链表创建、插入、删除、释放内存等简单操作