剑指offer笔记
剑指offer
qq_35604674
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
面试题1: 赋值运算符函数
面试题1: 赋值运算符函数 题目:如下类型为CMyString的声明,请为该类型添加赋值运算符函数。 class CMyString { public: CMyString(char *pData = nullptr); CMyString(const CMyString &str);//常对象 ~CMyString(void); private: char *m_pData; ...原创 2019-04-29 22:08:16 · 210 阅读 · 0 评论 -
面试题4:二维数组中的查找
面试题4:二维数组中的查找 题目: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 例如: 1 2 8 9 2 4 9 12 4 7 10 13 6 8 11 15 从这个二维数组中查找数字5 从左上角开始查找的话,5大于1,但是...原创 2019-04-30 20:54:52 · 168 阅读 · 0 评论 -
面试题6:从尾到头打印链表
面试题6:从尾到头打印链表 题目描述 输入一个链表的头节点,从尾到头反过来打印出每个节点的值。链表节点定义如下: struct ListNode{ int m_nValue; struct ListNode* m_pNext; ListNode(int x):m_nValue(x),m_pNext(NULL){ } }; 思路: 从尾到头打印,能否改变原来的链表?(是否...原创 2019-05-01 17:02:59 · 164 阅读 · 0 评论 -
面试题7:重建二叉树
面试题7:重建二叉树 题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 二叉树的定义 struct TreeNode { int val; TreeNode *left; Tre...原创 2019-05-02 20:47:04 · 144 阅读 · 0 评论 -
面试题8:二叉树的下一个节点
面试题8:二叉树的下一个节点 题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 思路 中序遍历:左子树、根节点、右子树 指向父节点的指针有什么用? 中序遍历中,一个节点的下一个节点? 1.有右子树。右子树中最左子节点。 2.无右子树,是父节点的左子节点。父节点(有指向父节点的指针)。 3.无右子树,是父...原创 2019-05-02 21:46:02 · 136 阅读 · 0 评论 -
面试题50:第一个只出现一次的字符
面试题50:第一个只出现一次的字符 题目描述(1)字符串中第一个只出现一次的字符 在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出‘b’。并返回它的位置, 如果没有则返回 -1(需要区分大小写)。 思路 在字符串中查找某个字符——查找 查找算法:顺序查找、二分查找、二叉排序树查找、哈希表查找 二分查找和二叉排序树,针对有序的数组 1.使用顺序查找: 从头到尾依次取字...原创 2019-05-03 21:11:51 · 180 阅读 · 0 评论
分享