![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
牛客算法篇-高频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 · 428 阅读 · 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 · 119 阅读 · 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 · 105 阅读 · 0 评论 -
字符串(1)——入门+简单
字符串—Java实现 判断回文 题目描述 给定一个字符串,请编写一个函数判断该字符串是否回文。如果回文请返回true,否则返回false。 示例1 输入:“absba” 返回值:true 示例2 输入:“ranko” 返回值:false 示例3 输入:“yamatomaya” 返回值:false 示例4 输入:“a” 返回值:true import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接原创 2021-01-24 16:26:54 · 155 阅读 · 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 · 82 阅读 · 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 · 71 阅读 · 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 · 281 阅读 · 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 · 108 阅读 · 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 · 93 阅读 · 0 评论