飘过的小牛
飘过的小牛
全部文章
题解
归档
标签
去牛客网
登录
/
注册
飘过的小牛的博客
全部文章
/ 题解
(共36篇)
求路径
这个比求最小路径和差不多 public int uniquePaths (int m, int n) { // write code here if(m==0 || n==0){ return 0; } int [][] dp=new int [m][...
2021-03-15
0
530
矩阵的最小和
不知道是题目没写请清楚还是我的理解问题,,,,路径和包不包含最后的 matrix[m-1][n-1],,,,坑的是样例的这个数字是0,,,,害,搞了很久。 1 dfs 深搜尝试所有的可能性,找出最大的(超时) dfs(matrix,x,y,m,n,0) +matrix[m-1][n-1] 应该才对,...
2021-03-15
0
690
岛屿数量
分析:考察的数据结构是二位数组,考察的算法是dfs 或者 bfs。但是bfs 要用队列来存临时数据,一般还是 dfs 用得比较多,全部交给机器。哈哈,这两个是以前我最怕的,没想到现在处理起来这么从容,是写得最快的。 首先要理解 dfs 和 bfs 的含义,并不是刻板的一个算法模板,而是一个算法的思路...
2021-03-15
11
1045
单链表的排序
链表的特点决定了只能从前往后的遍历,我的第一个思路是冒泡排序,但是超时,看了一眼归并排序的写法,真的是妙啊。 1 冒泡(未通过) public ListNode sortInList (ListNode head) { // write code here ...
2021-03-15
17
1229
判断回文
根据性质来判断就好了 public boolean judge (String str) { // write code here boolean res=true; if(str==null || str.length()==0){ ...
2021-03-15
0
565
买卖股票的最佳时机
分析:本题考察的数据结构是数组,算法是dp。当然dp 的递推规律是要我们去找出来的。首先要明白,dp 一定是有一层关系在:下一个数的结果产生一定是与上一个数有关的。整个数组一开始可能这个关系不明显,也就是说这个关系很可能不是连续的,是一种跳跃式的递推关系。接下来我们的操作步骤:1 去发现局部连续的递...
2021-03-15
1
674
容器盛水问题
本题的题目描述不太明确,需要一张示意图,在看别人的题解时看到这个图才明白是怎么回事。 所以本题的核心就是构造两边高而中间低的桶,这个桶能装的水取决于两边里面比较短的那一边。比如{3,1,2} 这个数组能装的水等于1 求得两边的最小值 22 用短的边减去中间波谷的值1得到结果1则数组{3,1,2} 这...
2021-03-15
12
1048
设计 getmin 最小栈
两个栈,一个用来存数据,一个用来存最小值。push 或者 pop的时候都要去尝试更新两个栈,变种问题是如何 O(1)取得最小值 代码格式不是很严谨,还是搞成几个典型的方法比较好 public int[] getMinStack (int[][] op) { // write...
2021-03-14
0
600
字符串的排列
暴力迭代,第n个字符及前面的字符形成的字符串的全排列要先计算第n-1个字符及前面字符形成的字符串的全排列 public ArrayList<String> Permutation(String str) { ArrayList<String> res...
2021-03-14
0
506
数组相加和为0
分析:考察的数据结构是数组,考察的算法是查找。数组里面的查找除了二分就是双指针了。但是这里要求的是3元。那么我就用3个指针。于是用了 left ,right 作为滑动窗口,mid 在中间寻找。问题转变为如何确定是左边移动还是右边移动?即找到了这样的三元组后哪边指针移动?没找到的话和为什么情况左边移动...
2021-03-14
0
647
首页
上一页
1
2
3
4
下一页
末页