• 在链表结尾插入一个结点 以及在 在链表中找到第一个含有某值的结点并删除该结点


     1 #include "stdafx.h"
     2 #include <iostream>
     3 #include <exception>
     4 using namespace std;
     5 
     6 struct ListNode
     7 {
     8     int m_nValue;
     9     ListNode* m_pnext;
    10 };
    11 
    12 void InsertNodeTail(ListNode** L,int num)
    13 {
    14     ListNode* node = new ListNode();
    15     node->m_nValue = num;
    16     node->m_pnext = NULL;
    17     if(*L == NULL)
    18     {
    19         *L = node;
    20     }
    21     else
    22     {
    23         ListNode *pHead=*L;
    24         while(pHead->m_pnext!=NULL)
    25             pHead=pHead->m_pnext;
    26         pHead->m_pnext = node;
    27     }
    28 }
    29 
    30 void RemoveNode(ListNode** pHead,int value)
    31 {
    32     if(pHead ==NULL||*pHead ==NULL)
    33         return;
    34     ListNode* pToBeDeleted = NULL;
    35     if((*pHead)->m_nValue == value)
    36     {
    37         pToBeDeleted = *pHead;
    38         *pHead = (*pHead)->m_pnext;
    39     }
    40     else
    41     {
    42         ListNode* pNode = *pHead;
    43         while(pNode->m_pnext != NULL && pNode->m_pnext->m_nValue!=value)
    44             pNode = pNode ->m_pnext;
    45         if(pNode->m_pnext != NULL && pNode ->m_pnext->m_nValue ==value)
    46         {
    47             pToBeDeleted = pNode->m_pnext;
    48             pNode->m_pnext = pNode->m_pnext->m_pnext;
    49         }
    50     }
    51     if(pToBeDeleted!=NULL){
    52         delete pToBeDeleted;
    53         pToBeDeleted = NULL;
    54     }
    55 
    56 }
    57 int _tmain(int argc, _TCHAR* argv[])
    58 { 
    59 
    60     return 0 ;
    61 }
  • 相关阅读:
    闭包_使用闭包
    闭包_理解闭包
    将视图直接转换成表的SQL语句
    基于先电的openstack云平台部署(IaaS 平台构建)
    Python替换掉列表的 和空格
    SQL语句生成一句话
    Clean-blog移植—博客园美化
    只是条咸鱼罢了
    基础平台-项目管理+组织管理心得
    关于springboot配置文件的一些心得
  • 原文地址:https://www.cnblogs.com/crazycodehzp/p/3556787.html
Copyright © 2020-2023  润新知