-3
A
答えて
-1
チェックしてください!
#include<bits/stdc++.h>
using namespace std;
struct Node
{
int data;
struct Node *next;
};
Node* newNode(int key)
{
Node *temp = new Node;
temp->data = key;
temp->next = NULL;
return temp;
}
void reverselist(Node **head)
{
Node *prev = NULL, *curr = *head, *next;
while (curr)
{
next = curr->next;
curr->next = prev;
prev = curr;
curr = next;
}
*head = prev;
}
void printlist(Node *head)
{
while (head != NULL)
{
cout << head->data << " ";
if(head->next) cout << "-> ";
head = head->next;
}
cout << endl;
}
void arrange(Node **head)
{
Node *slow = *head, *fast = slow->next;
while (fast && fast->next)
{
slow = slow->next;
fast = fast->next->next;
}
Node *head1 = *head;
Node *head2 = slow->next;
slow->next = NULL;
reverselist(&head2);
*head = newNode(0);
Node *curr = *head;
while (head1 || head2)
{
if (head1)
{
curr->next = head1;
curr = curr->next;
head1 = head1->next;
}
if (head2)
{
curr->next = head2;
curr = curr->next;
head2 = head2->next;
}
}
*head = (*head)->next;
}
int main()
{
Node *head = newNode(1);
head->next = newNode(2);
head->next->next = newNode(3);
head->next->next->next = newNode(4);
head->next->next->next->next = newNode(5);
printlist(head);
arrange(&head);
printlist(head);
return 0;
}
関連する問題
- 1. リンクされたリスト印刷最初の0の値の印刷
- 2. 単独リンクされたリスト印刷メソッドは最初のオブジェクト(Java)を印刷します
- 3. 印刷コンマ最後の1
- 4. OpenCv、Python - 最初に見つかった口を印刷する
- 5. 短い文字列から文字が印刷された後、2つの文字列から一度に1文字ずつ印刷を停止します。
- 6. 最初のアイテムで始まらないリスト全体を印刷する方法
- 7. 最後の番号(1)が印刷されるのはなぜですか?
- 8. 最後に印刷された文字を削除するpython
- 9. 各行の値をPHP codeigniterで1つ1つずつ印刷する方法
- 10. 二重にリンクされたリストのセグメンテーションフォールト印刷は後方
- 11. 最後の行から1行ずつファイルを読む
- 12. 一度に1つのエントリをリンクされたリストノードに印刷する(Java)
- 13. リストの最初の項目、間違った出力を印刷
- 14. 美しいスープで最初と最後の1000行を印刷するには
- 15. C++でendlの後に最初から印刷する方法は?
- 16. リストの最初の項目を印刷する
- 17. 最後にインスタンス化されたものから最初にインスタンス化されたものから、同じタグを持つインスタンス化されたプレハブを1つずつ破棄しますか?
- 18. 文書内の最初のリンクを印刷
- 19. pandas pythonを使用して最大日付から最後の3つのデータを印刷する方法
- 20. 1行に1文字ずつ印刷する方法は?
- 21. 1つのクラスで最初からjarを作成する
- 22. C++リストの最後まで消去するリスト(リスト内の1つの要素)
- 23. 1つまたは2つの要素を持つjQueryの最初と最後のセレクタ
- 24. 私はビューページの最後に行く最初の1つのリロード
- 25. 最後に印刷されたページのフッター
- 26. Scalaを使用してリストの最初の要素を印刷
- 27. コアデータ1つのfetchRequestの最初と最後のレコードを選択します
- 28. 最初の数アイテムだけをわずかに印刷するには?
- 29. CSVファイルを繰り返して行を印刷すると、最初の行だけが印刷されます。
- 30. リンクされたリストはC言語で逆に印刷されます
コードを入力する必要はありません。最初に試みたコードを表示してから問題を尋ねます。私たちはあなたの家事を完了するためにここにいません。 –