牛客4913417
牛客4913417
全部文章
分类
题解(36)
归档
标签
去牛客网
登录
/
注册
牛客4913417的博客
全部文章
(共36篇)
括号序列
public boolean isValid (String s) { // write code here if(s==null) return true; char[] c=s.toCharArray(); Stack<Cha...
栈
括号序列
2021-01-27
0
463
链表中的节点每k个节点一组翻转
第一种:循环o(1)的时间复杂度 public ListNode reverseKGroup (ListNode head, int k) { if(head==null||head.next==null) return head; int cnt=0; ...
反转
链表
2021-01-27
0
606
合并有序数组
从最大位置开始进行合并 public void merge(int A[], int m, int B[], int n) { int res = m+n-1; int i=m-1; int j=n-1; while(i>=0 &...
合并有序
2021-01-27
0
453
找到字符串的最长无重复子串
public int maxLength (int[] arr) { // write code here if(arr==null) return 0; Map<Integer,Integer> map=new HashMap<&g...
最长无重复
2021-01-27
0
525
两个栈实现队列
一个栈A用来保存入队列的数据,另一个栈B用来出队。如果栈B是空的,就需要把栈A全部弹出压入栈B,然后弹出一个元素即可。如果栈B不为空,直接弹出一个元素即可。 Stack<Integer> stack1 = new Stack<Integer>(); Stack<...
两个栈实现队列
2021-01-27
0
417
合并有序链表
分两步:1 在两个链表都没走到尾进行合并。2 在至少一个走到尾部的时候再进行判断处理。 public ListNode mergeTwoLists (ListNode l1, ListNode l2) { // write code here ListNode pre...
合并有序
2021-01-27
0
513
两数之和
//空间换时间 public int[] twoSum (int[] numbers, int target) { // write code here Map<Integer,Integer> map=new HashMap<>(); ...
空间换时间
两数之和
2021-01-27
0
528
子数组的最大累加和
第一种:设置初始sum为0。从左往右加,并更新最值。当sum小于0时候,此时再往右加,只会让后面更小,因此sum设置为0;时间复杂度是o(n)。空间复杂度是o(1)。 public int maxsumofSubarray (int[] arr) { // write code he...
子数组累加和
前缀和
2021-01-27
0
563
寻找第k大
public int findKth(int[] a, int n, int K) { // write code here return find(a,0,n-1,K); } private int find(int[] a, int start,...
快速排序
寻找第k大
2021-01-27
0
484
二叉树的层次遍历
//注意的就是在循环中最后不要以queue.size()作为条件,因为有add,poll操作 长度会变 public ArrayList<ArrayList<Integer>> levelOrder (TreeNode root) { // write cod...
二叉树
bfs
2021-01-27
0
512
首页
上一页
1
2
3
4
下一页
末页