LeetCode---Reorder List
来源:互联网 发布:航天科工33所 知乎 编辑:程序博客网 时间:2024/06/06 03:18
题目大意:给出一个链表,将链表的首尾节点相邻组成一个新链表。
算法思想:
1.遍历链表,将链表中的节点存放如容器中。
2.遍历容器,交替从容器首尾中取出节点,组成一个链表。
3.去掉添加的头结点。
代码如下:
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: void reorderList(ListNode* head) { if(head==NULL) return ; ListNode* p=head; deque<ListNode*> Node; while(p!=NULL){ cout<<p->val<<endl; Node.push_back(p); p=p->next; } deque<ListNode*>::iterator pos; ListNode *wzg=new ListNode(0); p=wzg; bool flag=true; cout<<"size:"<<Node.size()<<endl; while(!Node.empty()){ if(flag){ p->next=Node.front(); Node.pop_front(); flag=false; } else{ p->next=Node.back(); Node.pop_back(); flag=true; } p=p->next; } if(p!=NULL) p->next=NULL; head=wzg->next; delete wzg; }};
0 0
- [leetcode][list] Reorder List
- [leetcode][list] Reorder List
- Leetcode: Reorder List
- [LeetCode] Reorder List
- LeetCode题解:Reorder List
- Leetcode: Reorder List
- LeetCode:Reorder List
- leetcode之Reorder List
- Leetcode: Reorder List
- [LeetCode]Reorder List
- [LeetCode] Reorder List
- leetcode Reorder List
- LeetCode | Reorder List
- LeetCode Reorder List
- LeetCode 之 Reorder List
- Leetcode: Reorder List
- LeetCode OJ:Reorder List
- Reorder List (LeetCode)
- java使用javamail读取邮箱(收件箱为例)
- 可视化日历
- 正则表达式的问题收集
- 欢迎使用CSDN-markdown编辑器
- spring里的请求
- LeetCode---Reorder List
- 【Foundation-72-2】NSTimeZone - 属性
- 一些培训课程mysql R sas java python oracle
- 使用Matlab进行图像的读写、显示和缩放(最近临插值和双线性内插值法)
- 正确理解wait()和notify()方法
- mini2440通过nfs访问共享文件
- hdu3472HS BDC
- 生日悖论与随机数
- 事务(一)