C言語のノードの連結について質問です。
途中までできていて、残りがわからないです。
作ろうとしているプログラムは、ノードpの後にノードq以降のリストを連結する関数を作ろうとしています。
#include<stdio.h>
struct node{
int data;
struct node *next;
};
struct node *head,*tail;
void concat(struct node *p, struct node *q)
{
if(p -> head == NULL) もしpがなにもなかったら
これ以降が思いつきません。
elseではどうしたらいいんでしょうか。
よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
> if(p -> head == NULL) もしpがなにもなかったら
↑struct node に head というメンバーはありませんよ。
> ノードpの後にノードq以降のリストを連結する関数
↑不明確です。
変数 head と tail がそれぞれ構造体 node の先頭と末尾を示しいるとして、ノードp は head が示すリストへ連結されている一つのノードであり、ノードq はまだ head が示すリストへ連結されていないノードリストであると仮定した場合、
struct node * n;
for (n = q; n != NULL; n = n->next)
{
if (n->next == NULL)
break;
}
if (p->next == NULL) /* ノードp は末尾である p == head もしくは p == tail でも確認可 */
tail = n; /* tail へノードリストq の末尾ノードを代入 */
else /* 中間ノード */
n->next = p->next; /* ノードリストq の末尾ノードの next へノードp の次のノードを代入 */
p->next = q; /* ノードp の next へ q を代入 */
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CPUの考え方を教えてください ...
-
SNMP リンクダウンとノードダ...
-
ルート要素ノードが2個ある場合?
-
ノードとは
-
二分木の高さについて
-
VB6.0でDOMを使用して...
-
vbsのDOMDocumentで要素のText...
-
TreeView の初期表示について
-
2分探索木の高さを求めるプロ...
-
昔Winnyってありましたけど、あ...
-
あるノードリストに、特定の名...
-
C#初心者です。HtmlAgilityPack...
-
特殊文字の処理について
-
このエラー、何とかなりません...
-
XMLで要素が記述された順番に意...
-
タグの有無の判定
-
VBAのXML処理でメモリが足りない?
-
バッチファイルでテキストファ...
-
MSXMLを使ってノードを削除した...
-
スタイルシートを使用したXM...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CPUの考え方を教えてください ...
-
SNMP リンクダウンとノードダ...
-
ルート要素ノードが2個ある場合?
-
昔Winnyってありましたけど、あ...
-
C#でTreeViewのCheckBoxのサイ...
-
同じタグ名の項目取得
-
XML文書の指定した属性値を持つ...
-
複数のマックPCによる数値計算...
-
TreeView の初期表示について
-
あるノードリストに、特定の名...
-
TreeViewに重複する値をセット
-
ノードとは
-
C#のツリービューでツリーノー...
-
2分探索木の高さを求めるプロ...
-
C# TreeView 効率良いノード追...
-
TreeViewの再表示のちらつきを...
-
TreeViewで複数ノードの選択は...
-
4色定理はなぜグラフ理論で証...
-
ツリービューのノードをダブル...
-
ツリービューの使い方が・・・
おすすめ情報