1052. Linked List Sorting (25)
#include <iostream>
#include <algorithm>
#include <vector>using namespace std;struct node
{int address, key, next;
}nod[100000];int cmp(node n1, node n2)
{return n1.key < n2.key;
}int main()
{int n, begin;scanf("%d%d", &n, &begin);int i;node cur;for(i = 1; i <= n; i++){scanf("%d%d%d", &cur.address, &cur.key, &cur.next);nod[cur.address] = cur;}vector<node> v;while(begin != -1){cur = nod[begin];v.push_back(cur);begin = cur.next;}int size = v.size();if(size == 0){printf("%d -1\n", size);return 0;}sort(v.begin(), v.end(), cmp);printf("%d %05d\n", size, v[0].address);for(i = 0; i < size; i++){printf("%05d %d ", v[i].address, v[i].key);if(i + 1 < size){printf("%05d\n", v[i + 1].address);}else{printf("-1\n");}}system("pause");return 0;
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/974054.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!