![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指offer
Sherry0924
这个作者很懒,什么都没留下…
展开
-
剑指offer刷题之面试题3---------二维数组中的查找
题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路:从数组右上角的数字开始查找,若该数字等于要查找的数,则查找结束;若该数字大于要查找的数,则删除该列;若该数字小于要查找的数,则删除该行。代码如下:bool Find(int* matrix, int rows,...原创 2018-04-21 09:47:56 · 294 阅读 · 0 评论 -
剑指offer刷题之面试题5---------从尾到头打印链表
面试题5:从尾到头打印链表 题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。思路:一般人的第一反应是从头到尾输出会比较简单,于是很自然想到把链表中的链接结点的指针翻转过来,改变链表的方向,然后就可以从头到尾输出了。但这种方法会改变原来链表的结构,一般面试官会要求这个题目不改变链表的结构,所以要另想方法解决这个问题。解决这个问题肯定要先遍历链表,遍历的顺序是从头到尾,可输出的...原创 2018-04-20 22:51:54 · 90 阅读 · 0 评论 -
剑指offer刷题之面试题1---------赋值运算符函数
部分代码参考:https://github.com/zhedahht/CodingInterviewChinese2题目:如下为类型CMyString的声明,请为该类型添加赋值运算符函数。class CMyString { public: CMyString(char* pData = nullptr); CMyString(const CMyString&...原创 2018-04-20 22:44:38 · 131 阅读 · 0 评论 -
牛客网剑指offer刷题2---------替换空格
题目描述请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。class Solution {public: void replaceSpace(char *str,int length) { if(str == nullptr || length <=0) ...原创 2018-04-19 14:25:44 · 89 阅读 · 0 评论 -
剑指offer刷题之面试题4---------替换空格
题目:请实现一个函数,把字符串中的每个空格替换成”%20”。例如输入“We are happy.”,则输出“We%20are%20happy.”。常规思路:从头到尾扫描字符串,每一次碰到空格,必须先把空格后面的所有字符都后移两个字节(否则就有两个字符被覆盖了),然后再替换空格。此种方法,对于长度为n的字符串来说,算法的时间复杂度为O(n2)为了减少移动次数,换一种思路:从前向后替换改为从后向前替换...原创 2018-04-18 16:56:32 · 153 阅读 · 0 评论 -
牛客网剑指offer刷题1---------二维数组中的查找
题目描述在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。我的代码:class Solution {public: bool Find(int target, vector<vector<int> > array) { bool fo...原创 2018-04-18 10:48:36 · 112 阅读 · 0 评论 -
牛客网剑指offer刷题3--------- 从尾到头打印链表
题目描述输入一个链表,从尾到头打印链表每个节点的值。方法一:栈/*** struct ListNode {* int val;* struct ListNode *next;* ListNode(int x) :* val(x), next(NULL) {* }* };*/class...原创 2018-04-21 16:11:31 · 204 阅读 · 0 评论