首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
尘烟cyd
众合科技_研发中心_软件开发
获赞
2
粉丝
2
关注
0
看过 TA
4
男
杭州电子科技大学
2020
C++
IP属地:湖北
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑尘烟cyd吗?
发布(36)
刷题
尘烟cyd
2020-06-25 10:29
众合科技_研发中心_软件开发
剑指offer之链表中倒数第K个结点
题目 输入一个链表,输出该链表中倒数第k个结点。 解1 思路 解1是直观的方法,先遍历一遍链表获取链表长度n,然后在从头开始遍历到n-k+1处,需要遍历2n-k-2次。 代码 /* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: ListNode* FindKthToTail(ListNode* pListHead, unsigne...
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-23 20:47
众合科技_研发中心_软件开发
剑指offer之调整数组顺序使奇数位于偶数前面
题目 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 思路 遍历数组,将奇数往前移。#代码 下标遍历 class Solution { public: void reOrderArray(vector<int> &array) { int temp; for (int i = 1; i < array.size(); i++ ) { int j = i; ...
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-22 20:03
众合科技_研发中心_软件开发
剑指offer之数值的整数次方
题目 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。保证base和exponent不同时为0 思路 无 代码 class Solution { public: double Power(double base, int exponent) { return pow(base,exponent); } };
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-21 13:19
众合科技_研发中心_软件开发
剑指offer之二进制中1的个数
题目 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 思路 还记得第一次碰到这种题的时候我真的是笨了吧唧的老老实实的转成二进制去数的 代码 class Solution { public: int NumberOf1(int n) { int count = 0; while (n) { n = (n - 1)&n; count ++; } return count; } };
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-21 10:48
众合科技_研发中心_软件开发
剑指offer之矩形覆盖
题目 我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2n的大矩形,总共有多少种方法?比如n=3时,23的矩形块有3种覆盖方法: 思路 本题其实和跳台阶的题很像,当最后一个小矩形是竖着放时,就是f(n-1)种方法,当横着放时,另一个也得横着放,所以就是f(n-2)种方法。需要注意的是,递归时候要注意方法,直接调用会内存超限,所以最好是多写点代码,累加。 代码 class Solution { public: int rectCover(int number) { int res = 0; int per1...
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-20 23:31
众合科技_研发中心_软件开发
剑指offer之变态跳台阶
题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路 今天的题目是变态跳台阶,昨天是跳台阶,昨天跳台阶只有两种跳跃类别,再加上题目的提示,猜到了f(n)=f(n-1)+f(n-2)这个关系,实话实说,这是投机取巧,猜到了解法也只是知其然而不知其所以然,所以今天这个题就麻爪了,搜呗,搜到一大神,将其所以然解释清楚了,大神的链接如下:https://blog.csdn.net/u013408863/article/details/106008031/虽然大神解释的青蛙只能跳1级和2级的情况,但我们可以以此类推啊,那青蛙最后...
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-19 23:22
众合科技_研发中心_软件开发
剑指offer之跳台阶
题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 思路 本题纯粹是投机取巧算来的,一开始时候毫无头绪,看到题目提示了递归,就拿笔例举了前6个数的跳法数量,发现了f(n)=f(n-1)+f(n-2)这个规律,遂解。 代码 class Solution { public: int jumpFloor(int number) { if (1 == number) { return 1; } else if (2 == nu...
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-18 21:40
众合科技_研发中心_软件开发
剑指offer之斐波那契数列
题目 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。n<=39 思路 题目很简单,递归处理就好,不过题目挖了个小坑,斐波那契数列是从第1项开始的,而题目里是从0项开始,斐波那契数列前两项,也就是第1项和第2项值是给定的,而本题题目里恰巧又给了前两项,第0项和第1项,这有可能误导你以为从第2项就可以开始递归了,实则不然,我们还是应该从斐波那契数列的第3项也就是本题中的第4项开始计算,就是当你n>2时才能开始递归。 代码 public: int Fibonacci(int n) { if...
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-17 22:38
众合科技_研发中心_软件开发
剑指offer之二维数组中的查找
题目 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 思路 这个题其实读起来难,只要理解了题意做起来就比较容易,归根结底就是先定位如果存在该整数,那么这个整数会存在哪一行,然后遍历该行查找,遍历的结果就是查找的结果。 代码 class Solution { public: bool Find(int target, vector<vector<int> > array) { int array_col =...
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-17 22:32
众合科技_研发中心_软件开发
2020-06-17
在牛客打卡18天,今天学习:刷题 1 道/代码提交 4 次
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-17 22:29
已编辑
众合科技_研发中心_软件开发
剑指offer之旋转数组的最小数字
题目 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 思路 这题一看名字,旋转数组,这是要旋转么?粗读题目,我还以为是有规律的数字旋转后找最小值,需要一定的技巧,再仔细一琢磨,这不就是给个数组找最小值么,数组数据非递减,那就是没规律呗,直接算,这题算中等难度大概考察的是阅读理解能力吧。#代码 class Solution { public: int min...
0
点赞
评论
收藏
转发
尘烟cyd
2020-06-17 22:28
已编辑
众合科技_研发中心_软件开发
剑指offer之用两个栈实现队列
题目 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路 本题不难,首先了解队列的Push操作和Pop操作。在stack和queue中,Push位在队尾插入数据,Pop为弹出队尾或队首数据但不返回值,但本题中Pop操作要返回数据。然后是stack,stack主要用到了empty,pop,top,push四个操作。我的想法是这样的,用stack1实现push 操作,stack2实现pop操作。push 时先将数据时将stack2中数据移入stack1,然后队尾插入,pop时先将数据从stack1数据移入stack2中,然后top操作返回stack2队...
0
点赞
评论
收藏
转发
尘烟cyd
2020-07-01 16:23
已编辑
众合科技_研发中心_软件开发
剑指Offer之重建二叉树
题目 > 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 思路 > 这题一般用递归的方法来解,根据先序遍历和中序遍历很容易的确定头节点,但左子叶和右子叶无法判定,但是我们可以确定左子树的先序遍历中序遍历和右子树的先序遍历中序遍历结果,提取后再次调用函数即可重建二叉树。 代码 class Solution { public: TreeNode* reConstructBinaryTree(...
0
点赞
评论
收藏
转发
尘烟cyd
2020-05-25 21:08
众合科技_研发中心_软件开发
剑指offer之从头到尾打印链表
题目 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 思路 其实没什么思路,就是一个简单的遍历,然后反向输出,反向输出时我尝试了反向迭代器,因为是在类中,会报错,如果不是在类中,反向迭代器是可以使用的,此处没有使用。 代码 /** * struct ListNode { * int val; * struct ListNode *next; * ListNode(int x) : * val(x), next(NULL) { * } * }; */ class Solution { p...
0
点赞
评论
收藏
转发
尘烟cyd
2020-05-17 21:53
众合科技_研发中心_软件开发
剑指offer-替换空格
题目 实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 思路 在原字符串上添加,首先计算出空格的数量,同时根据此计算出字符串扩充后的长度,从后向前添加。 代码 class Solution { public: void replaceSpace(char *str,int length) { int numofblack = 0;/*空格数量*/ int index2 = 0;/*延长后的字符串的索引*/ int lengt...
0
点赞
评论
收藏
转发
1
2
3
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务