自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(537)
  • 资源 (6)
  • 收藏
  • 关注

原创 LeetCode--1315--祖父节点值为偶数的节点和

题目描述:给你一棵二叉树,请你返回满足以下条件的所有节点的值之和:该节点的祖父节点的值为偶数。(一个节点的祖父节点是指该节点的父节点的父节点。)如果不存在祖父节点值为偶数的节点,那么返回 0 。输入:root = [6,7,8,2,7,1,3,9,null,1,4,null,null,null,5]输出:18题意:题目描述题解:直接用一个栈去模拟代码:/** * Definition for a binary tree node. * public class TreeNod

2020-07-08 16:54:15 295

原创 LeetCode--169--多数元素

题目描述:给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。输入:[3,2,3][2,2,1,1,1,2,2]输出:32题意:题目描述题解:排序后直接输出len / 2代码:class Solution { public int majorityElement(int[] nums) { Arrays.sort(nums); re

2020-07-08 16:52:41 218

原创 LeetCode--112--路径总和

题目描述:给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。输入:5/ 4 8/ / 11 13 4/ \ 7 2 1sum = 22输出:true题意:题目描述题解:简单dfs,一步步搜代码:/** * Definition for a binary tree node. * public class TreeNode { * int val; * T

2020-07-08 16:51:41 245

原创 LeetCode--150--逆波兰表达式求值

题目描述:根据 逆波兰表示法,求表达式的值。有效的运算符包括 +, -, , / 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。说明:整数除法只保留整数部分。给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。输入:[“2”, “1”, “+”, “3”, ""][“4”, “13”, “5”, “/”, “+”][“10”, “6”, “9”, “3”, “+”, “-11”, “", “/”, "”, “17”, “+”, “5”, “+”]

2020-07-08 16:50:38 128

原创 LeetCode--1502--判断能否形成等差数列

题目描述:给你一个数字数组 arr 。如果一个数列中,任意相邻两项的差总等于同一个常数,那么这个数列就称为 等差数列 。如果可以重新排列数组形成等差数列,请返回 true ;否则,返回 false 。输入:arr = [3,5,1]arr = [1,2,4]输出:truefalse题意:题目描述题解:排个序,然后按照等差数列的定义判断代码:class Solution { public boolean canMakeArithmeticProgression(int[]

2020-07-08 16:49:20 198

原创 LeetCode--1486--数组异或操作

题目描述:给你两个整数,n 和 start 。数组 nums 定义为:nums[i] = start + 2*i(下标从 0 开始)且 n == nums.length 。请返回 nums 中所有元素按位异或(XOR)后得到的结果。输入:n = 5, start = 0n = 4, start = 3n = 1, start = 7n = 10, start = 5输出:8872题意:题目描述题解:直接搞代码:class Solution { public in

2020-07-08 16:48:17 127

原创 LeetCode--500--键盘行

题目描述:给定一个单词列表,只返回可以使用在键盘同一行的字母打印出来的单词。键盘如下图所示。输入:[“Hello”, “Alaska”, “Dad”, “Peace”]输出:[“Alaska”, “Dad”]题意:题目描述题解:直接搞代码:class Solution { public static String[] findWords(String[] words) { String a = "QWERTYUIOPqwertyuiop"; S

2020-07-08 16:46:55 153

原创 LeetCode--561--数组拆分 I

题目描述:给定长度为 2n 的数组, 你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), …, (an, bn) ,使得从1 到 n 的 min(ai, bi) 总和最大。输入:[1,4,3,2]输出:4题意:题目描述题解:简单贪心排序后,两两找最小值代码:class Solution { public int arrayPairSum(int[] nums) { int sum = 0; Arrays.sort(n

2020-07-08 16:45:42 110

原创 LeetCode--1491-去掉最低工资和最高工资后的工资平均值

题目描述:给你一个整数数组 salary ,数组里每个数都是 唯一 的,其中 salary[i] 是第 i 个员工的工资。请你返回去掉最低工资和最高工资以后,剩下员工工资的平均值。输入:salary = [4000,3000,1000,2000]salary = [1000,2000,3000]salary = [6000,5000,4000,3000,2000,1000]salary = [8000,9000,2000,3000,6000,1000]输出:2500.000002000.

2020-07-08 16:44:29 295

原创 LeetCode--1475--商品折扣后的最终价格

题目描述:给你一个数组 prices ,其中 prices[i] 是商店里第 i 件商品的价格。商店里正在进行促销活动,如果你要买第 i 件商品,那么你可以得到与 prices[j] 相等的折扣,其中 j 是满足 j > i 且 prices[j] <= prices[i] 的 最小下标 ,如果没有满足条件的 j ,你将没有任何折扣。请你返回一个数组,数组中第 i 个元素是折扣后你购买商品 i 最终需要支付的价格。输入:prices = [8,4,6,2,3]prices = [1,

2020-07-08 16:43:00 206

原创 LeetCode--905--按奇偶排序数组

题目描述:给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。你可以返回满足此条件的任何数组作为答案。输入:[3,1,2,4]输出:[2,4,3,1]题意:题目描述题解:直接搞,先放偶数再放奇数代码:class Solution { public int[] sortArrayByParity(int[] A) { int len = A.length; int [] ans = new int [le

2020-07-08 16:41:38 132

原创 LeetCode--1108-- IP 地址无效化

题目描述:给你一个有效的 IPv4 地址 address,返回这个 IP 地址的无效化版本。所谓无效化 IP 地址,其实就是用 “[.]” 代替了每个 “.”。输入:address = “1.1.1.1”address = “255.100.50.0”输出:“1[.]1[.]1[.]1”“255[.]100[.]50[.]0”题意:题目描述题解:直接搞代码:class Solution { public String defangIPaddr(String address

2020-07-08 16:40:34 113

原创 堆空间内存大小和设置

package jvm;/** * @Author CallMeDad * @create 2020/7/7 20:15 */public class initheap { /* 默认情况下: 初试内存大小为电脑物理内存 / 64 最大内存大小为电脑物理内存 / 4 设置堆空间大小参数: -Xms 用来设置堆空间(新生代 + 老年代)的初始内存大小 -x 是jvm的运行参数

2020-07-07 20:22:40 590

原创 关于Java虚拟机栈局部变最表slot的理解

局部变最表是一组变量值存储空间,用于存放方法参数和方法内部定义的局部变量。在 Java程序被编译为 Class文件时,就在方法的 Code属性的max_locals数据项中确定了该方法所需要分配的最大局部变量表的容量。局部变量表的容量以变量槽(variable slot,下称slot)为最小单位,虚拟机规范中并没有明确指明一个slot应占用的内存空间大小,只是很有“导向性”地说明每个slot都应该能存放一个boolean、byte、char、short、int、float、reference或return

2020-07-07 10:37:58 600 2

原创 LeetCode--103--二叉树的锯齿形层次遍历

题目描述:给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。输入:[3,9,20,null,null,15,7]输出:[[3],[20,9],[15,7]]题意:题目描述题解:简单bfs队列中利用奇偶性判断一下是从前往后还是从后往前代码:/** * Definition for a binary tree node. * public class TreeNode { * int val;

2020-07-06 16:27:08 122

原创 LeetCode--5--最长回文子串

题目描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。输入:babadcbbd输出:babbb题意:题目描述题解:直接搞代码:class Solution { public String longestPalindrome(String s) { int len = s.length(); if (len < 2) { return s; }

2020-07-06 16:25:35 102

原创 LeetCode--96--不同的二叉搜索树

题目描述:给定一个整数 n,求以 1 … n 为节点组成的二叉搜索树有多少种?输入:3输出:5题意:题目描述题解:卡特兰数代码:class Solution { public int numTrees(int n) { int[] G = new int[n + 1]; G[0] = 1; G[1] = 1; for (int i = 2; i <= n; ++i) { for (in

2020-07-06 16:24:44 82

原创 LeetCode--73--矩阵置零

题目描述:给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。输入:[[1,1,1],[1,0,1],[1,1,1]][[0,1,2,0],[3,4,5,2],[1,3,1,5]]输出:[[1,0,1],[0,0,0],[1,0,1]][[0,0,0,0],[0,4,5,0],[0,3,1,0]]题意:题目描述题解:开一个数组记录一下,哪些行和列需要修改,然后直接改就好了代码:class Solut

2020-07-06 16:23:50 111

原创 LeetCode--258--各位相加

题目描述:给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。输入:38输出:2题意:题目描述题解:直接搞代码:class Solution { public int addDigits(int num) { int ans = num; while(true){ ans = getDigits(ans); if(ans < 10) return ans; }

2020-07-06 16:22:35 93

原创 LeetCode--26--删除排序数组中的重复项

题目描述:给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。输入:nums = [1,1,2]nums = [0,0,1,1,1,2,2,3,3,4]输出:25题意:题目描述题解:直接搞代码:class Solution { public int removeDuplicates(int[] nums) { i

2020-07-06 16:21:39 92

原创 LeetCode--137--只出现一次的数字 II

题目描述:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次。找出那个只出现了一次的元素。输入:[2,2,3,2][0,1,0,1,0,1,99]输出:399题意:题目描述题解:用一个map记录一下,然后直接搞代码:class Solution { public int singleNumber(int[] nums) { int len = nums.length; HashMap<Integer,Intege

2020-07-06 16:20:30 83

原创 LeetCode--101--对称二叉树

题目描述:给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字 1 和 0。输入:a = “11”, b = “1”a = “1010”, b = “1011”输出:10010101题意:题目描述题解:直接搜,对于每一个节点,判断左右子节点是不是相等代码:/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNo

2020-07-06 16:19:28 105

原创 LeetCode--20--快乐数

题目描述:编写一个算法来判断一个数 n 是不是快乐数。「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。如果 n 是快乐数就返回 True ;不是,则返回 False 。输入:19输出:true题意:题目描述题解:直接搞代码:class Solution { public boolean isHappy(int n) {

2020-07-06 16:18:01 135

原创 LeetCode--112--路径总和

题目描述:给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。输入:5/ 4 8/ / 11 13 4/ \ 7 2 1来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/path-sum著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。输出:22题意:题目描述题解:直接dfs搞代码:/** * Defin

2020-07-06 16:16:59 100

原创 LeetCode--268--缺失数字

题目描述:给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数。输入:[3,0,1][9,6,4,2,3,5,7,0,1]输出:28题意:题目描述题解:用一个set记录一下,然后直接从0开始暴力代码:class Solution { public int missingNumber(int[] nums) { HashSet<Integer> set = new HashSet<Inte

2020-07-06 16:16:11 113

原创 LeetCode--27--移除元素

题目描述:给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。输入:给定 nums = [3,2,2,3], val = 3给定 nums = [0,1,2,2,3,0,4,2], val = 2输出:22题意:题目描述题解:直接搞代码:class Solution {

2020-07-06 16:15:05 96

原创 LeetCode--53--最大子序和

题目描述:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。输入:[-2,1,-3,4,-1,2,1,-5,4]输出:6题意:题目描述题解:直接搞代码:class Solution { public int maxSubArray(int[] nums) { int ans = nums[0]; int sum = 0; for(int num: nums) {

2020-07-06 16:14:12 86

原创 LeetCode--82--删除排序链表中的重复元素 II

题目描述:给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。输入:1->2->3->3->4->4->51->1->1->2->3输出:1->2->52->3题意:题目描述题解:直接搞代码:/** * Definition for singly-linked list. * public class ListNode { * int val; *

2020-07-06 16:12:56 90

原创 LeetCode--100--相同的树

题目描述:给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的输入:[1,2,3], [1,2,3][1,2], [1,null,2][1,2,1], [1,1,2]输出:truefalsefalse题意:题目描述题解:简单dfs直接搜两个树的左节点和右节点做比较代码:/** * Definition for a binary tree node. * public class TreeNode

2020-07-06 16:11:24 104

原创 几种类加载器的体会使用

package jvm;public class classloader { public static void main(String[] args) { //获取系统类加载器 ClassLoader appClassloader = ClassLoader.getSystemClassLoader(); System.out.println(appClassloader); //sun.misc.Launcher$AppClassLo

2020-07-06 10:39:52 118

原创 LeetCode--67--二进制求和

题目描述:给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字 1 和 0。输入:a = “11”, b = “1”a = “1010”, b = “1011”输出:10010101题意:题目描述题解:直接搞代码:class Solution { public String addBinary(String a, String b) { StringBuffer ans = new StringBuffer();

2020-06-28 21:24:16 122

原创 LeetCode--83--删除排序链表中的重复元素

题目描述:反转一个单链表。输入:1->1->21->1->2->3->3输出:1->21->2->3题意:题目描述题解:可以通过将结点的值与它之后的结点进行比较来确定它是否为重复结点。如果它是重复的,我们更改当前结点的 next 指针,以便它跳过下一个结点并直接指向下一个结点之后的结点。代码:/** * Definition for singly-linked list. * public class ListNode {

2020-06-28 21:23:01 104

原创 LeetCode--206--反转链表

题目描述:反转一个单链表。输入:1->2->3->4->5->NULL输出:5->4->3->2->1->NULL题意:题目描述题解:直接搞,其中记录一下即可代码:/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { v

2020-06-25 21:32:24 274

原创 LeetCode--69--x 的平方根

题目描述:实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。输入:48输出:22题意:题目描述题解:简单二分代码:class Solution { public int mySqrt(int x) { int l = 0, r = x, ans = -1; while (l <= r) { int mid =

2020-06-25 21:30:59 133

原创 LeetCode--28--实现 strStr()

题目描述:实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。输入:haystack = “hello”, needle = “ll”haystack = “aaaaa”, needle = “bba”输出:2-1题意:题目描述题解:直接搞代码:class Solution { public int strStr(S

2020-06-25 21:30:14 102

原创 LeetCode--19--删除链表的倒数第N个节点

题目描述:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。输入:1->2->3->4->5, 和 n = 2.输出:1->2->3->5.题意:题目描述题解:首先遍历一遍找出链表的长度再去找倒数第n个也就是正数长度-n个代码:/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode

2020-06-25 21:29:16 97

原创 LeetCode--128--最长连续序列

题目描述:给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为 O(n)。输入:[100, 4, 200, 1, 3, 2]输出:4题意:题目描述题解:用一个set记录一下直接找就好了记得在判断的时候要判断前一位在不在Set,避免重复算代码:class Solution { public int longestConsecutive(int[] nums) { int len = nums.length; HashSet&

2020-06-25 21:27:58 140

原创 LeetCode--129--求根到叶子节点数字之和

题目描述:给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字。例如,从根到叶子节点路径 1->2->3 代表数字 123。计算从根到叶子节点生成的所有数字之和。说明: 叶子节点是指没有子节点的节点。输入:[1,2,3][4,9,0,5,1]输出:251026题意:题目描述题解:简单dfs直接搜到最后更新答案就好了代码:/** * Definition for a binary tree node. * public

2020-06-25 21:26:43 126

原创 LeetCode--111--二叉树的最小深度

题目描述:给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。输入:[3,9,20,null,null,15,7]输出:2题意:题目描述题解:简单dfs找到没有左右结点为止就更新最小深度代码:/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left;

2020-06-25 21:25:28 104

原创 LeetCode--50--Pow(x, n)

题目描述:实现 pow(x, n) ,即计算 x 的 n 次幂函数。输入:2.00000, 102.10000, 32.00000, -2输出:1024.000009.261000.25000题意:题目描述题解:快速幂代码:class Solution { public double myPow(double x, int n) { long N = n; return N >= 0 ? quickMul(x, N) : 1.0 /

2020-06-25 21:24:07 101

二叉树遍历java代码.zip

二叉树遍历

2021-01-28

快速排序java代码.zip

快速排序

2021-01-28

二叉树的高度和深度.zip

二叉树的高度和深度

2021-01-28

xy_ptdb-master.zip

心理测试系统

2021-01-28

ttps-server.zip

类似QQ空间

2021-01-28

宿舍管理系统-本科毕业设计

宿舍管理系统

2021-01-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除