1025 反转链表 解题代码测试结果问题整理 解题代码 #include<iostream> #include<algorithm> using namespace std; int dat[100005], nex[100005], ans[100005]; int main() { int f, n, k, temp, num = 0, i; cin >> f >> n >> k; for (int i = 0; i < n; i++) { cin >> temp; cin >> dat[temp] >> nex[temp]; } while (f != -1) { ans[num++] = f; f = nex[f]; } for (i = 0; i < num / k; i++) reverse(ans + i*k, ans + (i + 1)*k); for (int i = 0; i < num - 1; i++) printf("%05d %d %05d\n", ans[i], dat[ans[i]], ans[i + 1]); printf("%05d %d -1", ans[num - 1], dat[ans[num - 1]]); return 0; } 测试结果 问题整理 1.应该是vs2015编译器的原因,有些数组名称会有问题,而且柳神代码里比如有iostream就省略掉string头文件的操作vs2015上也不是很行。