首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
中工升达预备毕业生
得物APP_交易平台-营销_高级java工程师
获赞
1561
粉丝
36
关注
13
看过 TA
155
男
中原工学院
2020
Java
IP属地:上海
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑中工升达预备毕业生吗?
发布(78)
刷题
中工升达预备毕业生
2019-10-16 22:29
已编辑
得物APP_交易平台-营销_高级java工程师
【剑指offer】数值的整数次方
很经典的快速幂算法,当时学的时候真是一头雾水啊难啊,不过现在看来都是菜菜,哈哈哈~ // 看offer书,突然想到一个学习快速幂算法的思路:先看书上的公式,试着递归求解,递归求解思路还是很清晰的,最最后试着看递推思路。(一上来学递推思路有点吃力) // 递推写法 public class Solution { public static double Power(double base, int exp) { boolean flag = false; if (exp < 0) { flag = true; ...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-09-03 11:40
得物APP_交易平台-营销_高级java工程师
【剑指offer】二进制中1的个数
在机器中,整数的存储和运算都是其补码表示的。 正数右移:保持为正数,相当于/2。 负数右移:保持为负数,移位前是负数,移位后保持是负数,因此移位后最高位设为1。如果一直右移,最终会变成-1,即(-1)>>1是-1。 正数左移:不保持为正数,相当于*2。(注意:1左移31时为负数最大值) 负数左移:不保持为负数,在左移的过程中会有正有负的情况。所以切记负数左移不会特殊处理符号位。如果一直左移,最终会变成0。 <以上为个人总结,如有不对,望指正> // 一般思路:负数右移问题,以前都是正数右移,采坑了 public class Solution { pu...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-09-01 09:13
已编辑
得物APP_交易平台-营销_高级java工程师
【剑指offer】机器人的运动范围
一开始读错题意,造数据很小5行4列,然后想当然的认为讨论可解,推出数学公式就ok,结果只过了小范围的数据(m,n<10的数据),凉了两个小时才幡然醒悟---读错题了。 // m行n列 public static int movingCount(int threshold, int rows, int cols) { int m = rows; int n = cols; int k = threshold; if (k > m * n) { return m * n; } ...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-31 20:49
得物APP_交易平台-营销_高级java工程师
【剑指offer】矩阵中的路径
// 经典dfs题型(一个简单的dfs写了我那么久,果然老了,不中用了...) public class Solution { private final int dx[] = {1, -1, 0, 0}; private final int dy[] = {0, 0, 1, -1}; public boolean jude(char[] matrix, int rows, int cols, char[] str, int k, int index, boolean[] vis) { vis[index] = true; if ...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-31 09:28
已编辑
得物APP_交易平台-营销_高级java工程师
【剑指offer】旋转数组的最小数字
1.offer书上的写法,坑点很多。 3 4 5 1 2 (一般情况) 1 2 3 4 5 / 2 2 2 2 2(容易想到的点) 1 0 1 1 1 / 1 1 1 0 1(扑街) public class Solution { public int minNumberInRotateArray(int[] array) { int i = 0, j = array.length - 1; if (array[i] < array[j]) { // 2 return array[i]; } ...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-30 20:37
得物APP_交易平台-营销_高级java工程师
【剑指offer】快排实现
快速排序算法: 实现:先在数组中选择一个数字(默认首位数字),接下来把数组中的数字分为两部分,比选择数字小的移到数组的左边,比选择数字大的移到数组右边。递归进行,知道数组有序。 复杂度:平均复杂度O(nlogn) 最坏复杂度O(n^2),体现在数组基本有序,每次选取最后一个作为比较数字的情况。 代码: import java.util.Random; public class Solution { public static int Partition1(int[] data, int l, int r) { // 方法1 int tmp = data[l]...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-09-09 16:05
已编辑
得物APP_交易平台-营销_高级java工程师
【剑指offer】链表测试
辨析P++,(p++),(++p),++(p),(P--),(--P)https://blog.csdn.net/publicstaticfinal/article/details/90005142 剑指offer链表添加,删除元素中传入的pHead为什么要是指向头指针的指针问题?https://blog.csdn.net/jmt330/article/details/80166752#commentBox java在方法里new一个对象的生命周期及作用范围https://blog.51cto.com/5563447/1286374 package cn.wsw.web.Test; ...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-29 16:12
得物APP_交易平台-营销_高级java工程师
【剑指offer】矩形覆盖
经典题,思想很好,小白可以多读几遍分析思路!(P79) class Mat { // 矩阵对象 int n = 2; int m[][] = new int[n][n]; public Mat mul(Mat a) { // 矩阵乘法 Mat b = new Mat(); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) for (int k = 0; k < n; k++) ...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-29 16:05
得物APP_交易平台-营销_高级java工程师
【剑指offer】变态跳台阶
f(n)=f(n-1)+f(n-2)+...+f(1)f(n-1)=f(n-2)+...f(1)得:f(n)=2*f(n-1) public class Solution { public int JumpFloorII(int target) { return 1<<(target-1); //return (int)Math.pow(2,target-1); } }
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-29 15:51
得物APP_交易平台-营销_高级java工程师
【剑指offer】跳台阶
根据递推公式构造系数矩阵用于快速幂(竞赛中经常用到)进阶博客:https://blog.csdn.net/u012061345/article/details/52224623#commentBox class Mat { // 矩阵对象 int n = 2; int m[][] = new int[n][n]; public Mat mul(Mat a) { // 矩阵乘法 Mat b = new Mat(); for (int i = 0; i < n; i++) { for (int j = 0; j...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-29 15:40
得物APP_交易平台-营销_高级java工程师
【剑指offer】斐波那契数列
根据递推公式构造系数矩阵用于快速幂(竞赛中经常用到)进阶博客:https://blog.csdn.net/u012061345/article/details/52224623#commentBox class Mat { // 矩阵对象 int n = 2; int m[][] = new int[n][n]; public Mat mul(Mat a) { // 矩阵乘法 Mat b = new Mat(); for (int i = 0; i < n; i++) { for (int j = 0; j...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-29 10:23
得物APP_交易平台-营销_高级java工程师
【剑指offer】用两个栈实现队列
// 经典题目,无需多言! (建议AC之后,多看讨论和题解,会提高很快) import java.util.Stack; public class Solution { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer> stack2 = new Stack<Integer>(); public void push(int node) { stack1.push(node); } public int pop() {...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-28 15:32
得物APP_交易平台-营销_高级java工程师
【剑指offer】二叉树的下一个结点
思路:看到这种题,先画出一颗满二叉树,写出中序序列;观察某个节点的下一个节点的位置。看出端倪后,画一个残缺的二叉树,找出规律求解即可。 讨论: 当前节点有右子树 当前节点无右子树2.1 当前节点是父节点的左子树2.2 当前节点是父节点的右子树 // 分析问题,找出归路。很考验基本功了... class TreeLinkNode { int val; TreeLinkNode left = null; TreeLinkNode right = null; TreeLinkNode next = null; TreeLinkNode(int val) ...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-27 17:23
得物APP_交易平台-营销_高级java工程师
【剑指offer】数组中重复的数字
读清题目很关键,长度为n的数组,范围在0~n-1。 开额外数组设置标记的做法真的很low。 书上的思想真的很nice,时间O(n) 空间O(1) public class Solution { public boolean duplicate(int numbers[], int length, int[] duplication) { if (length <= 0 || numbers == null) { return false; } int index = 0; while (index < ...
0
点赞
评论
收藏
转发
中工升达预备毕业生
2019-08-26 22:21
得物APP_交易平台-营销_高级java工程师
【剑指offer】重建二叉树
前序序列{1,2,4,7,3,5,6,8} 根->左->右中序序列{4,7,2,1,5,3,8,6} 左->根->右 前序序列的第一个数字是1,说明根节点是1。 在中序序列中找到数字1的位置mid,mid左边为左子树的中序序列{4,7,2},右边为右子树的中序序列{5,3,8,6}。 由于知道左右子树的个数,则前序序列中左子树序列为{2,4,7},右子树序列为{3,5,6,8}。 思路很清晰,是一个递归的过程。写不写的出来,全靠基本功了。 class TreeNode { int val; TreeNode left; TreeNode...
0
点赞
评论
收藏
转发
1
2
3
4
5
6
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务