- 題目連結:L2-022 重排連結清單
- 考查知識:模拟+靜态連結清單
- 題意描述:
- 将原來的連結清單結點按照最右結點,最左節點,最右結點,最左節點,…,的順序重新排列
- 思路簡析:
- 先周遊一遍連結清單,去掉不與連結清單聯通的結點,儲存聯通結點位址
- 設定雙指針l指向最左端結點位址,r指向最右端結點位址;
- 不斷将将最右段結點的後繼連上最左端結點,最左端結點的後繼置為NULL;将最左端結點的後繼連上最右端結點,最右端結點的後繼置為NULL
- 具體代碼
#include<bits/stdc++.h> using namespace std; typedef long lo