首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
有名
获赞
128
粉丝
2
关注
0
看过 TA
22
男
厦门海洋职业技术学院
2015
Java
IP属地:未知
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑有名吗?
发布(84)
评论
刷题
有名
关注TA,不错过内容更新
关注
2021-08-13 22:59
已编辑
厦门海洋职业技术学院 Java
题解 | #寻找峰值#
题目 描述 山峰元素是指其值大于或等于左右相邻值的元素。给定一个输入数组nums,任意两个相邻元素值不相等,数组可能包含多个山峰。找到索引最大的那个山峰元素并返回其索引。 假设 nums[-1] = nums[n] = -∞。 方法一 思路 需要寻找索引最大的峰值,所有优先查找右边的峰值,即从数组的右边开始遍历; 遍历数组,寻找比其左右两边的数大的值,即为满足要求的峰值,返回该峰值即可; 注意题目中明确说明a[-1],a[n]为最小值,所以对于边界值只需要比较一次就可以了。 具体步骤 代码如下import java.util.*; public class Solution { ...
0
点赞
评论
收藏
分享
2021-08-13 22:59
已编辑
厦门海洋职业技术学院 Java
题解 | #反转字符串#
题目 描述 写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000) 方法一 思路 题目要求反转字符串,最简单的方法就是新建一个字符串对象s,对原字符串对象进行倒序遍历,写入s中,返回s。 具体步骤 代码如下:import java.util.*; public class Solution { /** * 反转字符串 * @param str string字符串 * @return string字符串 */ public String solve (String str) { // write code here String res...
0
点赞
评论
收藏
分享
2021-08-13 23:00
已编辑
厦门海洋职业技术学院 Java
题解 | #缺失数字#
题目 描述 从0,1,2,...,n这n+1个数中选择n个数,找出这n个数中缺失的那个数,要求O(n)尽可能小。 方法一 思路 题目明确指出所给的数据在0~n之间,且所有数值均只出现一次,而对于数列求和有 ,故,可以遍历整个数组求出总和sum1,再借助上述求和公式计算在不缺失数字的情况下的总和sum2,sum2-sum1即为所缺失的数字。 具体步骤 代码如下:import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * 找缺失数字 * @param a int整型一维数...
数据结构算法学习
0
点赞
评论
收藏
分享
2021-08-13 23:04
已编辑
厦门海洋职业技术学院 Java
题解 | #树的直径#
方法一: 思路 题目中有提到连通图,所以就想着将给的数据转换成无向图,再遍历无向图找到一条最长路径,使用邻接矩阵存储无向图。 具体步骤 首先将所给数据转换成图,由所给例子可以看出,其是个无向图,故,转换成无向图时,需要将(i,j)与(j,i)同时设置为边对应的权重; 以每一个节点为起点,去计算以当前起点为节点的最大路径 取所有路径中的最大值,即为最长路径。 代码如下:import java.util.*; /* * public class Interval { * int start; * int end; * } */ public class Solution { /** * ...
数据结构算法学习
0
点赞
评论
收藏
分享
2021-08-13 23:03
已编辑
厦门海洋职业技术学院 Java
题解 | #字符串出现次数的TopK问题#
方法一 思路 题目要求找出出现次数前k的字符串,最为简单的就是直接遍历数组统计每个字符串出现的次数,接着再降序排序输出前k的字符串。 具体步骤 首先判断k值是否为0,若为0,则直接返回一个空的String二维数组; k值大于0时,通过哈希计算每个字符串出现的次数; 借助JDK的比较器Collection.sort,自定义降序排序规则,对统计结果进行降序排序; 输出排序后的前k个字符串,以及其出现次数。 代码如下: import java.util.*; public class Solution { /** * return topK string * @param strings ...
数据结构算法学习
0
点赞
评论
收藏
分享
2021-08-13 23:03
已编辑
厦门海洋职业技术学院 Java
题解 | #判断t1树中是否有与t2树拓扑结构完全相同的子树#
方法一 思路 题目要求判断树t1是否有与t2拓扑结构完全相同的子树,即判断t2是否为t1的一个子树。最容易想到的方法就比较t1与t2的每一个节点。 具体步骤 首先判断树t1是否为空,为空则直接返回false; 比较t1的根节点与t2的根节点,不同则比较t1的左节点与t2的根节点以及t1的右节点与t2的根节点,如此循环往复; 若是能找到完全相同的结构,则返回true。 大致步骤如上所示,这里采用的是递归来实现遍历查找的,具体代码如下: import java.util.*; /* * public class TreeNode { * int val = 0; * TreeNo...
0
点赞
评论
收藏
分享
2021-08-13 23:02
已编辑
厦门海洋职业技术学院 Java
题解 | #判断一个链表是否为回文结构#
方法一 思路 因为需要判断是否为回文结构,所以要比较头尾的数据,而链表无法随机查询数据,所以可以先将链表转换成list。 具体步骤 首先初始化一个list列表; 遍历链表,将链表中的值转移至list中; 在list中通过比较头尾的值来判断链表是否为回文结构。 代码如下: import java.util.*; /* * public class ListNode { * int val; * ListNode next = null; * } */ public class Solution { /** * * @param head ListNode类 th...
牛客388923860号:
请问为什么负数并不能使用==,我理解这里应该自动拆箱了
0
点赞
评论
收藏
分享
2021-08-13 23:01
已编辑
厦门海洋职业技术学院 Java
题解 | #数组中的最长连续子序列 #
方法一:暴力遍历(可优化) 思路 题目要求找出无序数组arr中的所有连续的数字,并得出最长的连续序列的长度,最为简单的方法就是暴力遍历整个数组,找出其中最长的连续序列。 具体步骤 首先数组是无序的,为了遍历查找方便需要首先将数组按照升序排序; 接着是一个双重循环,第一重循环是找到连续序列的初始值i;而第二重循环则是找到以i为头的连续序列的长度; 取所有连续序列的长度的最大值作为返回结果。 代码如下: import java.util.*; public class Solution { /** * max increasing subsequence * @param arr in...
0
点赞
评论
收藏
分享
2021-08-13 23:00
已编辑
厦门海洋职业技术学院 Java
题解 | #二叉树中是否存在节点和为指定值的路径#
思路 本题实质上是一道二叉树搜索的问题,通过遍历搜索二叉树,从而判断二叉树节点中是否存在节点和为指定值的路径。 方法一:前序遍历 这里采用的是前序遍历的递归实现方法,即:根节点-左儿子-右儿子。 具体思路如下图所示: 具体代码如下: import java.util.*; /* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * } */ public class Solution { /** * * ...
0
点赞
评论
收藏
分享
1
2
3
4
5
6
关注他的用户也关注了:
牛客网
牛客企业服务