牛客算法篇-高频TOP200
文章平均质量分 72
题解整理
weixin_43947653
这个作者很懒,什么都没留下…
展开
-
数组(3)—简单
Java实现LeetCode主要元素数组中占比超过一半的元素称之为主要元素。给定一个整数数组,找到它的主要元素。若没有,返回-1。示例 1:输入:[1,2,5,9,5,9,5,5,5]输出:5示例 2:输入:[3,2]输出:-1示例 3:输入:[2,2,1,1,1,2,2]输出:2说明:你有办法在时间复杂度为 O(N),空间复杂度为 O(1) 内完成吗?class Solution { public int majorityElement(int[] nums) {原创 2021-01-29 21:36:31 · 469 阅读 · 0 评论 -
栈
Java实现## 用两个栈实现队列题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。import java.util.Stack;public class Solution { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer> stack2 = new Stack<Integer>(); //栈-——先进后出原创 2021-01-27 21:54:42 · 183 阅读 · 2 评论 -
树——简单难度
树——Java实现二叉树的镜像题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:二叉树的镜像定义:源二叉树8/ 6 10/ \ / 5 7 9 11镜像二叉树8/ 10 6/ \ / 11 9 7 5//递归public class Solution { public void Mirror(TreeNode root) { if(root == null) return;原创 2021-01-26 21:19:08 · 118 阅读 · 0 评论 -
字符串(1)——入门+简单
字符串—Java实现判断回文题目描述给定一个字符串,请编写一个函数判断该字符串是否回文。如果回文请返回true,否则返回false。示例1输入:“absba”返回值:true示例2输入:“ranko”返回值:false示例3输入:“yamatomaya”返回值:false示例4输入:“a”返回值:trueimport java.util.*;public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接原创 2021-01-24 16:26:54 · 184 阅读 · 0 评论 -
链表(2)——中等难度
链表—中等难度(java实现)链表中环的入口节点题目描述对于一个给定的链表,返回环的入口节点,如果没有环,返回null拓展:你能给出不利用额外空间的解法么?(图源牛客LPL006题解)/** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; *原创 2021-01-18 21:48:41 · 109 阅读 · 0 评论 -
链表(1)—简单难度
简单难度——链表(java实现)反转链表题目描述输入一个链表,反转链表后,输出新链表的表头。示例1输入:{1,2,3}返回值:{3,2,1}/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { public ListNode ReverseLis原创 2021-01-17 17:33:53 · 96 阅读 · 0 评论 -
数组(2)——中等难度
中等难度(java实现)数组中相加为0的三元组题目描述给出一个有n个元素的数组S,S中是否有元素a,b,c满足a+b+c=0?找出数组S中所有满足条件的三元组。注意:三元组(a、b、c)中的元素必须按非降序排列。(即a≤b≤c)解集中不能包含重复的三元组。例如,给定的数组 S = {-10 0 10 20 -10 -40},解集为(-10, 0, 10) (-10, -10, 20)示例1:输入:[-2,0,1,1,2]返回值:[[-2,0,2],[-2,1,1]]思路:三数相加和为0原创 2021-01-15 16:56:55 · 292 阅读 · 0 评论 -
数组(1)——简单难度
知识点——数组(java实现)两数之和题目描述给出一个整数数组,请在数组中找出两个加起来等于目标值的数,你给出的函数twoSum 需要返回这两个数字的下标(index1,index2),需要满足 index1 小于index2.。注意:下标是从1开始的假设给出的数组中只存在唯一解例如:给出的数组为 {20, 70, 110, 150},目标值为90输出 index1=1, index2=2示例1:输入:[3,2,4],6返回值:[2,3]//方法一:暴力法public int[]原创 2021-01-13 22:32:58 · 118 阅读 · 0 评论 -
入门难度
入门难度——java实现反转字符串斐波那契数列螺旋矩阵旋转数组判断回文寻找峰值转圈打印矩阵反转字符串写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)示例一输入:“abcd”返回值:“dcba”方法一:调用库函数import java.util.*;public class Solution { public String solve (String str) { StringBuffer sb =new StringBuffe原创 2021-01-12 22:04:03 · 160 阅读 · 0 评论