首页 > TAG信息列表 > pNode1
LeetCode 101. 对称二叉树 [Symmetric Tree (Easy)]
给定一个二叉树,检查它是否是镜像对称的。 来源:力扣(LeetCode) /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */剑指offer
// 面试题23:链表中环的入口结点// 题目:一个链表中包含环,如何找出环的入口结点?例如,在图3.8的链表中,// 环的入口结点是结点3。 ListNode* FindFirstNode(ListNode* HeadNode){ if(!HeadNode) return nullptr; ListNode* FastNode = HeadNode; ListNode* SlowNode =剑指offer - 面试题52: 两个链表的第一个公共节点 - C++
大概思路我记得。无任何参考写出来了 第一次没通过是我想冒险试一下如何一句话定义两个指针 // 编译错误,提示不能把ListNode*转为 ListNode型 // ListNode *pNode1 = pHead1, pNode2 = pHead2; // 正确写法 ListNode *pNode1 = pHead1, *pNode2 = pHead2; 记住咯! 我的代码:《剑指offer》第五十五题(二叉树的深度)
// 面试题55(一):二叉树的深度// 题目:输入一棵二叉树的根结点,求该树的深度。从根结点到叶结点依次经过的// 结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。//如果左右节点只有一个存在,则深度为该存在的节点的深度+1//如果左右节点都存在,则深度为最大子节点深度+1#inclu《剑指offer》第二十二题(链表中倒数第k个结点)
// 面试题22:链表中倒数第k个结点// 题目:输入一个链表,输出该链表中倒数第k个结点。为了符合大多数人的习惯,// 本题从1开始计数,即链表的尾结点是倒数第1个结点。例如一个链表有6个结点,// 从头结点开始它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个结点是// 值为4的结点。//O剑指offer——面试题32:从上到下打印二叉树
void BFS(BinaryTreeNode* pRoot){ if(pRoot==nullptr) { cout<<"empty binary tree!"<<endl; return; } queue<BinaryTreeNode*>pNode; pNode.push(pRoot); while(!pNode.empty()) { BinaryTreeNode*剑指offer——面试题18.1:删除链表中重复的节点
1 // 面试题18(二):删除链表中重复的结点 2 // 题目:在一个排序的链表中,如何删除重复的结点?例如,在图3.4(a)中重复 3 // 结点被删除之后,链表如图3.4(b)所示。 4 5 #include <cstdio> 6 #include "List.h" 7 8 void DeleteDuplication(ListNode** pHead) 9 { 10 i剑指offer——面试题18:删除链表的节点
1 #include"List.h" 2 3 void DeleteNode(ListNode** pHead,ListNode* pToBeDeleted) 4 { 5 if(*pHead==nullptr || pToBeDeleted==nullptr) 6 return; 7 if(pToBeDeleted->m_pNext!=nullptr) 8 { 9 ListNode* p