递归在单链表中查找某个值为data的结点
来源:互联网 发布:java license 框架 编辑:程序博客网 时间:2024/04/29 16:46
首先给出正常的查找方式:
LNode *LocateElem(LinkList L, ElemType e) {//本算法查找单链表 L (带头结点)中数据域值等于e的结点指针,否则返回NULLLNode *p = L->next;while (p != NULL && p->data != e) //从第1个结点开始查找data域为e的结点p = p->next;return p; //找到后返回该结点指针,否则返回NULL}
下面给出错误的递归的方式:
Node* Find(Node* pHead, int data){if (pHead){Find(pHead->next, data);if (pHead->_data == data)return pHead;//此处如果这样写找到了还是按照原来的步骤进行返回,等于没找到}return NULL;}
下面给出正确的递归方式:
Node* Find(Node* pHead, int data){if (pHead){Node*res = Find(pHead->next, data);if (res)return res;else{if (pHead->_data == data)return pHead;}}return NULL;}
1 0
- 递归在单链表中查找某个值为data的结点
- 每周数据结构【5】:在二叉树中递归查找为data值的点
- 设计一个递归算法,删除不带头结点的单链表中所有值为x的结点
- 在二叉树t中查找值为x的结点
- 一句话实现查找某个结点是否在二叉树里
- 在树根结点指针为r的二叉查找(排序)树上删除键值为e的结点
- 二叉树中查找值为x的结点,打印x结点的全部祖先
- 【Data Structure & Algorithm】在排序数组中查找和为定值的两个数
- linux 在某个目录下递归查找特定字符串
- 利用递归查找链表中与数据成员值与形参n相同的结点
- 假设在长度大于1的循环链表中,即无头结点也无头指针,s为指向链表中的某个结点的指针,试编写算法删除结点s的前驱结点
- 设计一个递归算法,删除不带头结点的单链表L中所有值为x的结点
- 输入一颗二元查找树,将该树转换为它的镜像,即在转换后的二元查找树中,左子树的结点都大于右子树的结点。 用递归和循环两种方法完成树的镜像转换。
- 面试题:输入一颗二元查找树,将该树转换为它的镜像, 即在转换后的二元查找树中,左子树的结点都大于右子树的结点。 用递归和循环两种方法完成树的镜像转换。
- 输入一颗二元查找树,将该树转换为它的镜像, 即在转换后的二元查找树中,左子树的结点都大于右子树的结点。 用递归和循环两种方法完成树的镜像转换:
- js 查找某个值在数组中出现的位置
- 在二叉树中找值为x的结点(假设所有结点的值都不一样)
- 在二叉树中找值为x的结点(假设所有结点的值都不一样)
- HTML5项目笔记4:使用Audio API设计绚丽的HTML5音乐播放器
- 正在等待localhost响应
- php字符串处理之全角半角转换(正则匹配全角字符思路)
- socket编程
- 苹果未到,专利先行?苹果获面部识别技术专利
- 递归在单链表中查找某个值为data的结点
- NYOJ 38 布线问题 prim && Kruskral 模板题
- HTML5项目笔记3:使用Canvas设计离线系统的Logo
- 微软开源分布式高性能GB框架LightGBM Ubuntu、CentOS下编译安装过程
- 向线程发送消息
- linux-PCB 之 task_struct
- 素数求和问题
- NASA 讨论在火星部署磁场
- hdu 2614 Beat (dfs)