关闭

2.1删除不带头结点的单链表L中值为x的结点

799人阅读 评论(0) 收藏 举报
/* 用于数据结构第二章线性表的综合应用题*/
//深度 O(n),空间复杂度O(n)
#include <iostream>
#include<stdio.h>
#include<string.h>
using namespace std;
//2.1
//设计一个递归算法,删除不带头结点的L中所有值为x的结点

typedef struct LNode
{
    int data;
    struct LNode *next;
} LNode,*LinkList;
int  main()
{
    return 0;
}

void Del_X_3(LinkList &L,int x)
{
    LNode *p;//p指向待删除结点
    if(L==NULL)
        return ;
    if(L->data==x)
    {
        p=L;
        L=L->next;
        free(p);
        Del_X_3(L,x);//递归调用
    }else
        Del_X_3(L->next,x);//递归调用


}

 

0
0
查看评论

设计一个递归算法,删除不带头结点的单链表中所有值为x的结点

设计一个递归算法,删除不带头结点的单链表中所有值为x的结点具体的代码如下:void Del_X_3(LinkList &L,ElemType x) { LNode *p; //p指向待删除结点,if(L==NULL) //递归出口 return ; if(L-...
  • dream_follower
  • dream_follower
  • 2017-05-28 22:29
  • 1728

设计一个递归算法,删除不带头结点的单链表L中所有值为x的结点

代码如下: void Del_X_3(LinkList &L,ElemType x) { LNode *p; if(L==NULL) return ; if(L->data==x) { p=L; L=L->next; free(p); Del_X...
  • xuluhui123
  • xuluhui123
  • 2013-10-28 22:56
  • 4181

递归算法-不带头节点的单链表

问题及代码: /* * Copyright (c) 2016, 烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:LinkList.cpp * 作 者:单昕昕 * 完成日期:2016年4月14日 * 版 ...
  • MIKASA3
  • MIKASA3
  • 2016-04-14 19:12
  • 1182

以指针和引用两种参数实现删除单链表L中所有值为X的结点的函数

以递归以及非递归实现删除单链表L中所有值为X的结点
  • immediately123
  • immediately123
  • 2014-04-27 15:59
  • 1625

删除单链表中所有值为x的元素

删除所有值为x的单链表中的元素 首先,我们先考虑第一种情况,就是说值删除第一个值为x的元素,这个比较简单, 只需要挨个比较x和链表节点的值,找到值相同的节点的前一个就可以删除这个节点了。 然后我们可以考虑两种办法第一种就是递归的去删除,这个比较简单,只需要删除第一个值和我们要删除的值一样的节点,然...
  • qq_31964815
  • qq_31964815
  • 2016-04-06 22:19
  • 2517

数据结构模版----单链表SimpleLinkList[不带头结点](C语言实现)

下面给出的是单链表不带头结点的另一种实现方式,也是最复杂的一种方式 单链表结构体 //#define DEBUG // 调试插桩信息宏 typedef int ElemType; // 自定义数据类型 //typedef struct LinkListNode* PLinkListNo...
  • gatieme
  • gatieme
  • 2015-01-11 16:00
  • 15733

实验2 不带头节点的单链表

实验1 编写函数slnklist delx(linklist head, datatype x),删除不带头结点单链表head中第一个值为x 的结点。 并构造测试用例进行测试。 #include "slnklist.h" /*请将本函数补充完整,并进行测试*/ link...
  • wlxsq
  • wlxsq
  • 2015-12-24 14:33
  • 5267

C语言实现单链表(不带头结点)的基本操作

链表在数据结构和算法中的重要性不言而喻。这里我们要用C来实现链表(单链表)中的基本操作。对于链表的基本概念请参考《数据结构与算法之链表》这篇博客。示例代码上传至 https://github.com/chenyufeng1991/LinkedList 。(1)定义单链表的节点类型typed...
  • CHENYUFENG1991
  • CHENYUFENG1991
  • 2016-02-24 16:33
  • 5446

递归实现删除链表中值为x的元素

在数据结构递归这一章中,有一个通过递归来实现删除单链表中一个值为x的节点的函数,大体上就像这样 void del(LinkList *&L,ElemType x) { Node *t; if (L==NULL) return; if (L->data==x) {...
  • wr132
  • wr132
  • 2015-04-28 19:30
  • 1771

带头结点的单链表head为空的判定条件---腾讯2014研发笔试卷

带头结点的单链表head为空的判定条件( ) 正确答案: B   你的答案: C (错误) head==NULL head->next==NULL head->next==head head!=NULL ...
  • chengonghao
  • chengonghao
  • 2016-07-13 21:17
  • 4793
    个人资料
    • 访问:68677次
    • 积分:1318
    • 等级:
    • 排名:千里之外
    • 原创:149篇
    • 转载:8篇
    • 译文:0篇
    • 评论:5条
    最新评论