24-Swap Nodes In Pairs
来源:互联网 发布:mac未知来源 编辑:程序博客网 时间:2024/05/22 13:14
难度:medium
类别:linked list
1.题目描述
Given a linked list, swap every two adjacent nodes and return its head.
For example,
Given 1->2->3->4, you should return the list as 2->1->4->3.
Your algorithm should use only constant space. You may not modify the values in the list, only nodes itself can be changed.
2.算法分析
这道题目其实非常简单,算不上medium难度,因为只需要将相邻两个节点的值进行交换即可。
3.代码实现
#include <iostream>using namespace std;struct ListNode { int val; ListNode *next; ListNode(int x) :val(x), next(NULL) {}};// ListNode* swapPairs(ListNode* head) { int count = 0; ListNode* temp = head; int num = 0; while (temp != NULL) { if (count % 2 == 0) { if (temp->next != NULL) { num = temp->val; temp->val = temp->next->val; temp->next->val = num; } } count++; temp = temp->next; } return head;}void printList(ListNode* head) { while (head != NULL) { cout << head->val << " "; head = head->next; } cout << endl;}int main() { int n, num; cin >> n; ListNode* head = NULL; ListNode* temp = NULL; for (int i = 0; i < n; ++i) { cin >> num; if (i == 0) { head = new ListNode(num); temp = head; } else { head->next = new ListNode(num); head = head->next; } } printList(temp); temp = swapPairs(temp); printList(temp); system("pause"); return 0;}
阅读全文
0 0
- [24]Swap Nodes in Pairs
- 24、Swap Nodes in Pairs
- 24 Swap Nodes in Pairs
- #24 Swap Nodes in Pairs
- 24 Swap Nodes in Pairs
- 24 - Swap Nodes in Pairs
- 24 Swap Nodes in Pairs
- [24]Swap Nodes in Pairs
- [24] Swap Nodes in Pairs
- 【24】Swap Nodes in Pairs
- 24-Swap Nodes In Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- Swap Nodes In Pairs
- Swap Nodes in Pairs
- Swap Nodes in Pairs
- 栈和队列
- 图形打印
- 4个我经常滥用的unix命令
- 国内Maven中央仓库推荐
- java(20)---克隆的第二种方式:串行化
- 24-Swap Nodes In Pairs
- 2017.11.1笔记
- 11.1机房小测-模拟·BFS·DP&容斥
- 2017ccpc 秦皇岛-A Balloon Robot
- 63-C语言异常处理
- idea的快捷键大全
- STM32(RFID)阶段一:添加串口USART2,修改中断接收协议
- 大数据(二十六)Hive【Hive 优化】
- DOS/DDOS攻击