自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 char *, const char *, string 三者之间的转换

C++ char *, const char*, string 三者之间的转换

2022-01-19 23:16:12 2279

原创 十四.二叉搜索树的范围和

二叉搜索树的范围和题目描述:给定二叉搜索树的根结点 root,返回值位于范围 [low, high] 之间的所有结点的值的和。示例 1:输入:root = [10,5,15,3,7,null,18], low = 7, high = 15输出:32示例 2:输入:root = [10,5,15,3,7,13,18,1,null,6], low = 6, high = 10输出:23提示:树中节点数目在范围 [1, 2 * 10^4] 内1 <= Node.val <=

2021-04-27 19:40:53 133

原创 十三. 在D天内送达包裹的能力

1011在D天内送达包裹的能力题目描述:传送带上的包裹必须在 D 天内从一个港口运送到另一个港口。传送带上的第 i 个包裹的重量为 weights[i]。每一天,我们都会按给出重量的顺序往传送带上装载包裹。我们装载的重量不会超过船的最大运载重量。返回能在 D 天内将传送带上的所有包裹送达的船的最低运载能力。示例 1:输入:weights = [1,2,3,4,5,6,7,8,9,10], D = 5输出:15解释:船舶最低载重 15 就能够在 5 天内送达所有包裹,如下所示:第 1 天:

2021-04-26 19:47:55 97

原创 非递归遍历二叉树

前序遍历public List<TreeNode> perOrderTraversal(TreeNode root) { if (root == null) { return null; } TreeNode node = root; List<TreeNode> list = new ArrayList<>(); Stack<TreeNode> stac

2021-04-25 21:04:18 246

原创 十二.最小路径和

64.最小路径和题目描述:给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例 1:输入:grid = [[1,3,1],[1,5,1],[4,2,1]]输出:7解释:因为路径 1→3→1→1→1 的总和最小。示例 2:输入:grid = [[1,2,3],[4,5,6]]输出:12m == grid.lengthn == grid[i].length1 <= m, n

2021-04-24 18:25:46 99

原创 十一.解码方法

91.解码方法题目描述:一条包含字母 A-Z 的消息通过以下映射进行了 编码 :‘A’ -> 1‘B’ -> 2…‘Z’ -> 26要 解码 已编码的消息,所有数字必须基于上述映射的方法,反向映射回字母(可能有多种方法)。例如,“11106” 可以映射为:“AAJF” ,将消息分组为 (1 1 10 6)“KJF” ,将消息分组为 (11 10 6)注意,消息不能分组为 (1 11 06) ,因为 “06” 不能映射为 “F” ,这是由于 “6” 和 “06” 在映射

2021-04-21 20:53:12 61

原创 十.只出现一次的数字

136.只出现一次的数字题目描述:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4题目分析:不使用额外空间能叫笨比么…笨比实现:class Solution { public int singleNumber(int[] nums) { Ma

2021-04-20 20:32:54 53

原创 九.移除元素

27.移除元素题目描述:给你一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参作任

2021-04-19 19:39:55 62

原创 八.删除有序数组中的重复项

26.删除有序数组中的重复项题目描述:给你一个有序数组 nums ,请你原地删除重复出现的元素,使每个元素只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组 并在使用 O(1) 额外空间的条件下完成。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝int len = remove

2021-04-18 09:28:37 95

原创 七.存在重复元素III

220.存在重复元素III题目描述:给你一个整数数组 nums 和两个整数 k 和 t 。请你判断是否存在 两个不同下标 i 和 j,使得 abs(nums[i] - nums[j]) <= t ,同时又满足 abs(i - j) <= k 。如果存在则返回 true,不存在返回 false。示例 1:输入:nums = [1,2,3,1], k = 3, t = 0输出:true示例 2:输入:nums = [1,0,1,1], k = 1, t = 2输出:true示例

2021-04-17 16:56:13 163

原创 六.打家劫舍II

213.打家劫舍II题目描述:你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都围成一圈 ,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警 。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下 ,能够偷窃到的最高金额。示例 1:输入:nums = [2,3,2]输出:3解释:你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 =

2021-04-15 20:42:28 82

原创 五.乘积最大子数组

152.乘积最大子数组题目描述:给你一个整数数组 nums 请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。示例一:输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6。示例二:输入: [-2,0,-1]输出: 0解释: 结果不能为 2, 因为 [-2,-1] 不是子数组。题目分析:第一眼看到这题我就觉得这太简单了, 不就是和求最大子序列和一样么,动态规划走起, 吭哧吭哧写了下面的代码, 结果可想而知…直接挂了

2021-04-14 23:04:17 227

原创 安卓基础练习--Activity

概述通过这个小练习巩固Activity跳转知识.先上丑陋的界面…界面实现代码<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_p

2021-04-14 00:15:07 279

原创 四.二叉搜索树节点最小距离

783.二叉搜索树节点最小距离题目描述:给你一个二叉搜索树的根节点 root ,返回树中任意两不同节点值之间的最小差值 。输入:root = [4,2,6,1,3]输出:1输入:root = [1,0,48,null,null,12,49]输出:1题目分析:其实一开始我是想过双重循环比较每一个元素和其他元素的差值的, 但是发现题目给的参数是一个头结点,而不是数组…(别骂了,别骂了,给笨比留点面子吧 T T).正解是我们需要根据给定的BST根节点求出BST中序遍历的数组(升序数组), 任

2021-04-13 21:54:21 127

原创 三.最大数

179.最大数题目描述:给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。 注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。输入:nums = [10,2]输出:“210”输入:nums = [3,30,34,5,9]输出:“9534330”输入:nums = [1]输出:“1”输入:nums = [10]输出:“10”1 <= nums.length <= 1000 <= nums[i] <= 10^9

2021-04-12 22:31:47 62

原创 二.丑数II

264.丑数II题目描述:给你一个整数 n ,请你找出并返回第 n 个 丑数 。丑数就是只包含质因数 2、3 和 5 的正整数。1 <= n <= 1690题目分析:1.定义数组dp, 其中dp[i] 表示第i个丑数,第n个丑数即为dp[n], 由于最小的丑数是 1,因此dp[1]=1。如何得到其余的丑数呢?定义三个指针p2, p3,p5 , 表示下一个丑数是当前指针指向的丑数乘以对应的质因数。初始时,三个指针的值都是 11。2.当 2<=i<=n 时,令 dp[i]

2021-04-11 14:32:44 74

原创 一.丑数

263.丑数题目描述:给你一个整数 n ,请你判断 n 是否为 丑数 。如果是,返回 true ;否则,返回 false 。丑数 就是只包含质因数 2、3 和 5 的正整数。-2^31 <= n <= 2^31 - 1题目分析:输入范围是 -2^31 <= n <= 2^31- 1,我们只需要对输入进行分情况讨论即可:如果 n 不是正整数(即小于等于 0):必然不是丑数,直接返回 false。如果 n 是正整数:我们对 n 执行 2 3 5 的整除操作即可,直到 n

2021-04-11 12:23:47 172

原创 Java常用默认快捷键的使用(Eclipse)

Java常用默认快捷键的使用补全代码:Alt+/快速修复:Ctrl+1批量导包:Ctrl+Shift+o使用单行注释:Ctrl+/使用多行注释:Ctrl+Shift+/取消多行注释:*Ctrl+Shift+*向下复制指定行代码:Ctrl+Alt+down向上复制指定行代码:Ctrl+Alt+up删除指定行的代码:Ctrl+d上移代码:Alt+up下移代码:Alt+down...

2021-04-10 16:30:31 315

空空如也

空空如也

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

TA关注的人

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