1133. Splitting A Linked List (25)[链表处理]
来源:互联网 发布:高考作文书推荐 知乎 编辑:程序博客网 时间:2024/06/01 08:03
1. 原题: https://www.patest.cn/contests/pat-a-practise/1133
2. 思路:
题意:链表处理题
将一杂乱的链表按照一定格式(负的在前,大于给定值的在后)重新排列。
思路:
先把每个结点存储在数组里,
然后遍历3次,存入vector里,最后输出即可。
将一杂乱的链表按照一定格式(负的在前,大于给定值的在后)重新排列。
思路:
先把每个结点存储在数组里,
然后遍历3次,存入vector里,最后输出即可。
已AC
3. 源码
#include <iostream>#include <vector>using namespace std;struct Node{int local;int data;int next;};Node dt[100000];int main(){//freopen("in.txt", "r", stdin);int N, head, K, tmp;vector<Node> re;scanf("%d %d %d", &head, &N, &K);for (int i = 0; i < N; i++){scanf("%d", &tmp);dt[tmp].local = tmp;scanf("%d %d", &dt[tmp].data, &dt[tmp].next);}int adr = head;while (1)//***找出小于0的{if (adr == -1)break;if (dt[adr].data < 0)re.push_back(dt[adr]);adr = dt[adr].next;}adr = head;while (1){if (adr == -1)break;if (dt[adr].data > -1 && dt[adr].data < (K+1))re.push_back(dt[adr]);adr = dt[adr].next;}adr = head;while (1)//***找出大于K的{if (adr == -1)break;if (dt[adr].data > K)re.push_back(dt[adr]);adr = dt[adr].next;}int size = re.size();for (int i = 0; i < size-1; i++){printf("%05d %d %05d\n", re[i].local, re[i].data, re[i+1].local);}printf("%05d %d -1\n", re[size-1].local, re[size-1].data);return 0;}
阅读全文
0 0
- 1133. Splitting A Linked List (25)[链表处理]
- 1133. Splitting A Linked List (25)
- 1133. Splitting A Linked List (25)
- 1133. Splitting A Linked List (25)
- 1133. Splitting A Linked List (25)
- 1133. Splitting A Linked List (25)
- 1133. Splitting A Linked List (25)
- 1133. Splitting A Linked List (25)
- PAT甲级 1133. Splitting A Linked List (25)
- 1133. Splitting A Linked List (25)-PAT甲级真题
- 1133. Splitting A Linked List (25)(结构体)
- PAT 甲级 1133. Splitting A Linked List (25)
- PAT-1133 Splitting A Linked List(链表分解)
- C++ Linked list: Traversing a Linked list(遍历链表)
- 逆置双向链表 Reverse a doubly linked list
- 反转单向链表(reverse a singly linked list)
- 链表应用--PAT.1097.Deduplication on a Linked List
- PAT 1097. Deduplication on a Linked List (25)(链表问题)(链表分段)
- jQuery事件对象
- Tensorflow加载预训练模型和保存模型
- WebMagic简述
- MTK IMS框架简析(1)——代码架构及模块初始化
- Android字数限制的EditText实现方案研究
- 1133. Splitting A Linked List (25)[链表处理]
- 【转载】java集合框图总结
- Win10安装.net framework 4.0失败提示已是操作系统一部分如何解决(一)
- 【云星数据---mesos实战系列002】:mesos全分布式部署实战009--修改marathon的默认端口
- 排序算法(一)——冒泡排序及改进
- C/C++,Windows/MFC, char, wchar_t, TCHAR 字符全总结 & c++字符串操作经验集(转)
- CTK 中的 MANIFEST.MF 文件
- sublime text3下BracketHighlighter的配置方法
- leetcode_419. Battleships in a Board ? 待解决