アルゴリズム:チェーンテーブル
2493 ワード
チェーンテーブルのいくつかのテーマを通じて、チェーンテーブルの基本的な操作の実現を理解して、再帰アルゴリズムの基本的な考え方を掌握して、しっかりしたプログラミング習慣を掌握します.
一、単一チェーンテーブルの基本操作
1.1、シングルチェーンテーブルノード定義
1.2、末尾にノードを挿入する
1.3、最初の値を含むノードを削除する
二、ちょっと難しい問題
2.1、
一、単一チェーンテーブルの基本操作
1.1、シングルチェーンテーブルノード定義
struct ListNode
{
int value;
ListNode *pNext;
};
1.2、末尾にノードを挿入する
void AddToTail(ListNode *pHead, int value)
{
/*
*
* ,
*/
ListNode *node = new ListNode();
node->value = value;
node->pNext = NULL;
ListNode *p = pHead;
while (p->pNext != NULL)
{
p = p->pNext;
}
p->pNext = node;
}
1.3、最初の値を含むノードを削除する
void RemoveNode(ListNode *pHead, int value)
{
if (pHead->pNext == NULL)
{
return;
}
ListNode *p = pHead;
while (p->pNext != NULL && p->pNext->value != value)
{
p = p->pNext;
}
if (p->pNext != NULL)
{
ListNode *p1 = p->pNext;
p->pNext = p1->pNext;
delete p1;
}
}
二、ちょっと難しい問題
2.1、