再帰
書式#include <stdio.hに>
typedefは構造体{
intデータ。
次のstructノード*;
}ノード;
ノード* CreateNode(int値){
ノード* TEMP =(ノード*)はmalloc(はsizeof(ノード))。
temp->データ=値。
temp->次= NULL;
温度を返します。
}
ノード*ヘッド= NULL;
ボイドInsertNode(int値){
ノード* TEMP = CreateNode(値)。
IF(ヘッド== NULL){ヘッド=温度;}
他の{
ノード* P =ヘッド。
一方、(P->次の)P = P->次。
p型>次=温度;
}
}
ボイドPrintLinkedList(){
IF(ヘッド== NULL){
printf( "LinkedListのは、空である\ nは。");
}他{
ノード* TEMP =ヘッド。
一方、(TEMP){
printf( "%D =>"、temp->データ)。
TEMP = temp->次。
}
printf( "NULLの\ nを");
}
}
ボイドRevertLinkedList(){
もし(ヘッド== NULL ||頭部>次== NULL)のリターン;
ノード*事前= NULL;
ノード*現在=ヘッド。
ノード*次回=頭部>次。
一方、(次の){
電流>次=前;
=現在の前。
=次の電流;
次回=ネクスト>次;
}
電流>次=前;
ヘッド=現在;
}
メインint型()
{
InsertNode(1)。
InsertNode(2)。
InsertNode(3)。
InsertNode(4)。
PrintLinkedList();
RevertLinkedList();
PrintLinkedList();
0を返します。
}
1 => 2 => 3 => 4 => NULL
4 => 3 => 2 => 1 => NULL