牛客568863653号
牛客568863653号
全部文章
分类
题解(9)
归档
标签
去牛客网
登录
/
注册
牛客568863653号的博客
全部文章
(共9篇)
题解 | #小易的升级之路#
难点:接受数据;求最大公约数 public class Main{ public static int gcd(int a,int b){ int c; while(b!=0){ c=a%b; ...
Java
数组
2022-04-12
0
374
题解 | #替换空格#
笨办法定义一个array[index++] String newStr=new String(array,0,index); 这句让人想不到。 好办法用stringbuilder 偷懒的办法发replaceall(" ","%20") public class Solution { /*...
Java
数组
2022-04-11
0
361
题解 | #二维数组中的查找#
时间复杂度o(行数+列数) 空间复杂度o(1) 在 java 中,其实只有一维数组,而二维数组是在一维数组中嵌套实现的。 比如 int[][] a = {{},{},{},{}} 要取行数和某一行的列数可以 : int rowLen = a.length; int colLen = a[0].len...
Java
数组
2022-04-08
0
281
去除数组中的重复数字
先贴自己写的一个笨办法,先对数字排序,再用stringbuilder判断有没有重复数字 没想到最后还是自己写的方法,效率高。 public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * ...
Java
数组
2022-04-08
1
262
题解 | #划分链表#
划分链表的第三种解法 这第三中解法和第二种解法有一点类似,都是通过移动节点,一次遍历完成的。区别是第二种解法是将大块向后移动,第三种解法是将小块向前移动。不过,第三种解法比第二种解法更容易理解。 这两种的方法的移动节点的while循环条件有点不一样,可以思考思考。 使用双指针移动节点,虽然有点难,还...
Java
链表
2022-02-18
1
338
题解 | #划分链表#
划分链表的第二种方法 他的做法是通过两个指针,把大的节点换到后面。 这个做法需要注意的是while(end.next!=endtwo)和if(endtwo.val>=x)这两行代码 while循环的作用是当前面大的节点都换到最后之后,如果begin的下一个节点是原链表的最后节点,那么退出循环。...
Java
链表
2022-02-18
0
291
题解 | #划分链表#
划分链表的第一种方法 创建两个头节点,遍历原链表,将链表的节点根据x的大小分配到两个新链表上,最后将两个新链表串起来。 收获:实现方法不仅需要一个newhead还需要的遍历指针ptr。 /* * public class ListNode { * int val; * ListNo...
Java
链表
2022-02-18
0
279
题解 | #二分查找-II#
同一个题的另一种解法,这个解法是利用了他记录了找到Target时的下标,在获得下标的时候它不进行一个输出,他继续进行while循环直到循环结束 public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 ...
Java
二分查找
2022-02-17
0
260
题解 | #二分查找-II#
写这个题目的时候我考虑的是按照普通方法获得Target的下标,通过while循环获得第一个target的下标 import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值...
Java
二分查找
2022-02-17
0
308