
剑指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 · 182 阅读 · 0 评论 -
面试题4:二维数组中的查找
面试题4:二维数组中的查找题目:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。例如:1 2 8 92 4 9 124 7 10 136 8 11 15从这个二维数组中查找数字5从左上角开始查找的话,5大于1,但是...原创 2019-04-30 20:54:52 · 137 阅读 · 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 · 138 阅读 · 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 · 125 阅读 · 0 评论 -
面试题8:二叉树的下一个节点
面试题8:二叉树的下一个节点题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。思路中序遍历:左子树、根节点、右子树指向父节点的指针有什么用?中序遍历中,一个节点的下一个节点?1.有右子树。右子树中最左子节点。2.无右子树,是父节点的左子节点。父节点(有指向父节点的指针)。3.无右子树,是父...原创 2019-05-02 21:46:02 · 107 阅读 · 0 评论 -
面试题50:第一个只出现一次的字符
面试题50:第一个只出现一次的字符题目描述(1)字符串中第一个只出现一次的字符在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出‘b’。并返回它的位置, 如果没有则返回 -1(需要区分大小写)。思路在字符串中查找某个字符——查找查找算法:顺序查找、二分查找、二叉排序树查找、哈希表查找二分查找和二叉排序树,针对有序的数组1.使用顺序查找: 从头到尾依次取字...原创 2019-05-03 21:11:51 · 152 阅读 · 0 评论