傳送門
這道題是關於鍊錶的題目。
我們可以直接陣列處理。
這裡要說的是輸出情況。
我們存的時候,按照鍊錶的順序給每個結點對應的索引。
然後根據這個索引進行重新排序。
輸出的時候注意到奇數和偶數的輸出情況。
**部分:
#include
#define mst(a, n) memset(a, n, sizeof(a))
using
namespace std;
const
int n =
1e5+10;
const
int m =55;
const
int inf =
1e6+10;
const
double eps =
0.05
;typedef
long
long ll;
struct node
a[n]
;int n, ad;
bool
cmp(node x, node y)
intmain()
cin >> ad >> n;
for(
int i =
0; i < n; i++
)int star = ad;
int cnt =1;
while
(star !=-1
)sort
(a, a + n, cmp)
;int i =
0, j = n -1;
cnt--
;for
(int i =
0; i < cnt /
2; i++
)else}if
(cnt &1)
return0;
}
L2 022 重排鍊錶 (25 分)
給定乙個單鏈表 l 1 l 2 l n 1 l n 請編寫程式將鍊錶重新排列為 l n l 1 l n 1 l 2 例如 給定l為1 2 3 4 5 6,則輸出應該為6 1 5 2 4 3。輸入格式 每個輸入包含1個測試用例。每個測試用例第1行給出第1個結點的位址和結點總個數,即正整數n 10 5 ...
L2 022 重排鍊錶 25分
給定乙個單鏈表 l 1 l 2 l n 1 l n 請編寫程式將鍊錶重新排列為 l n l 1 l n 1 l 2 例如 給定l為1 2 3 4 5 6,則輸出應該為6 1 5 2 4 3。每個輸入包含1個測試用例。每個測試用例第1行給出第1個結點的位址和結點總個數,即正整數n 10 5 結點的位址...
L2 022 重排鍊錶 25分
l2 022 重排鍊錶 25分 給定乙個單鏈表 l 1 l2 ln 1 ln 請編寫程式將鍊錶重新排列為 ln l1 l n 1 l2 例如 給定l為1 2 3 4 5 6,則輸出應該為6 1 5 2 4 3。輸入格式 每個輸入包含1個測試用例。每個測試用例第1行給出第1個結點的位址和結點總個數,即...