- 博客(27)
- 收藏
- 关注
原创 从安装到使用Xshell连接Linux遇到的种种问题的记录
本人最近刚开始学linux,被其安装配置搞昏了头,这篇文章用来记录我的从安装Xshell到Xshell连接不上Linux的遇到的种种问题的解决方法。
2022-06-02 18:19:11 696
原创 关于java.lang.UnsupportedClassVersionError错误解决办法
最近本人在学习开发一个带有Servlet的webapp。使用的是Tomcat10.0.12,为Tomcat配置了CATALINA_HOME和CLASSPATH,并为java配置了JAVA_HOME,这里暂时都没发现问题。我编写好java文件,web.xml配置文件后,在DOS命令窗口中对java文件进行编译,然后启动Tomcat,此时都没有问题。但是当我在浏览器地址栏输入web.xml文件中配置的地址时,发生了如下错误:错误信息是:java.lang.UnsupportedClassVer
2022-03-10 16:28:15 10746 3
原创 prim:1584.连接所有点的最小费用
题目描述:给你一个points数组,表示 2D 平面上的一些点,其中points[i] = [xi, yi]。连接点[xi, yi] 和点[xj, yj]的费用为它们之间的 曼哈顿距离:|xi - xj| + |yi - yj|,其中|val|表示val的绝对值。请你返回将所有点连接的最小总费用。只有任意两点之间 有且仅有一条简单路径时,才认为所有点都已连接。示例 1:输入:points = [[0,0],[2,2],[3,10],[5,2],[7,0...
2022-01-19 13:49:48 307
原创 贪心算法:1005.K次取反后最大化的数组和
题目描述:给你一个整数数组 nums 和一个整数 k ,按以下方法修改该数组:选择某个下标 i并将 nums[i] 替换为 -nums[i] 。重复这个过程恰好 k 次。可以多次选择同一个下标 i 。以这种方式修改数组后,返回数组 可能的最大和 。示例 1:输入:nums = [4,2,3], k = 1输出:5解释:选择下标 1 ,nums 变为 [4,-2,3] 。示例 2:输入:nums = [3,-1,0,2], k = 3输出:6解释:选择下标 (1, 2,.
2022-01-17 13:43:23 365
原创 贪心算法:860.柠檬水找零
题目描述:在柠檬水摊上,每一杯柠檬水的售价为5美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。注意,一开始你手头没有任何零钱。给你一个整数数组 bills ,其中 bills[i] 是第 i 位顾客付的账。如果你能给每位顾客正确找零,返回true,否则返回 false。示例 1:输入:bills = [5,...
2022-01-17 11:49:41 264
原创 KMP算法:28.实现strStr()
题目描述:实现 strStr() 函数。给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。说明:当 needle 是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。对于本题而言,当 needle 是空字符串时我们应当返回 0 。这与 C 语言的 strstr() 以及 Java 的 indexOf() 定义相符。示例 1:输入:hayst
2022-01-15 19:13:14 142
转载 动态规划:746.使用最小花费爬楼梯
题目描述:给你一个整数数组 cost ,其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。请你计算并返回达到楼梯顶部的最低花费。示例1:输入:cost = [10,15,20]输出:15解释:你将从下标为 1 的台阶开始。- 支付 15 ,向上爬两个台阶,到达楼梯顶部。总花费为 15 。示例2:输入:cost = [1,100,1,1,1,100,1,
2022-01-14 21:20:13 226
转载 动态规划:746.使用最小花费爬楼梯
题目描述:给你一个整数数组 cost ,其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。请你计算并返回达到楼梯顶部的最低花费。示例1:输入:cost = [10,15,20]输出:15解释:你将从下标为 1 的台阶开始。- 支付 15 ,向上爬两个台阶,到达楼梯顶部。总花费为 15 。示例2:输入:cost = [1,100,1,1,1,100,1,
2022-01-14 21:06:45 131
转载 动态规划:70.爬楼梯
题目描述:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶思路:爬到第一层楼梯有一种方法,爬到二层楼梯有两
2022-01-14 18:42:37 162
转载 动态规划:509.斐波那契数
题目描述:斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0,F(1) = 1F(n) = F(n - 1) + F(n - 2),其中 n > 1给你 n ,请计算 F(n) 。示例1:输入:2输出:1解释:F(2) = F(1) + F(0) = 1 + 0 = 1示例2:输入:3输出:2解释:F(3) = F(2) + F(1) = 1 + 1
2022-01-14 17:00:07 150
转载 动态规划:最大子数组和
题目描述:给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组 是数组中的一个连续部分。示例1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例2:输入:nums = [1]输出:1示例3:输入:nums = [5,4,-1,7,8]输出:23思路:假设 nums 数组的长度是 nn,下标从 0到 n−1.
2022-01-12 22:06:03 187
转载 分治算法:最大子数组和
题目描述:给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组 是数组中的一个连续部分。示例1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例2:输入:nums = [1]输出:1示例3:输入:nums = [5,4,-1,7,8]输出:23思路:这个分治方法类似于「线段树求解最长公共上升子序列问题」的 pu
2022-01-11 21:11:57 696
原创 二分法:二分查找
题目描述:给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例1:输入: nums= [-1,0,3,5,9,12], target= 9输出: 4解释: 9 出现在 nums中并且下标为 4示例2:输入: nums= [-1,0,3,5,9,12], target= 2输出: -1解释: 2 不存在 nums中因此返回 -1思路:使用非递归的二分查找
2022-01-11 18:34:22 416
原创 二叉树的最小深度
题目描述:给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明:叶子节点是指没有子节点的节点。示例1:输入:root = [3,9,20,null,null,15,7]输出:2示例2:输入:root = [2,null,3,null,4,null,5,null,6]输出:5思路:与求二叉树的最大深度类似,但是本题要注意存在只有单侧子树的情况/** * Definition for a binary tree node
2022-01-10 21:13:26 88
转载 二叉树的最大深度
题目描述:给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度3 。思路:如果我们知道了左子树和右子树的最大深度 l 和 r,那么该二叉树的最大深度即为max(l,r)+1而左子树和右子树的最大深度又可...
2022-01-10 20:53:07 402
原创 找出星型图的中心节点
题目描述:有一个无向的 星型 图,由 n 个编号从 1 到 n 的节点组成。星型图有一个 中心 节点,并且恰有 n - 1 条边将中心节点与其他每个节点连接起来。给你一个二维整数数组 edges ,其中 edges[i] = [ui, vi] 表示在节点 ui 和 vi 之间存在一条边。请你找出并返回 edges 所表示星型图的中心节点。示例1:输入:edges = [[1,2],[2,3],[4,2]]输出:2解释:如上图所示,节点 2 与其他每个节点都相连,所以节点 2 是中心
2022-01-09 23:45:58 388
原创 力扣:两数之和
题目描述:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。
2022-01-09 00:16:38 290
原创 二叉搜索树的最小绝对差
题目描述:给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。差值是一个正数,其数值等于两值之差的绝对值。
2022-01-07 13:34:45 355
转载 将有序数组转换为二叉搜索树
题目描述:给你一个整数数组 nums ,其中元素已经按升序排列,请你将其转换为一棵高度平衡 二叉搜索树。高度平衡二叉树是一棵满足“每个节点的左右两个子树的高度差的绝对值不超过1”的二叉树。示例1:输入:nums = [-10,-3,0,5,9]输出:[0,-3,9,-10,null,5]解释:[0,-10,5,null,-3,null,9] 也将被视为正确答案方法一:中序遍历,总是选择中间位置左边的数字作为根节点选择中间位置左边的数字作为根节点,则根节点的下标为m..
2022-01-04 20:56:32 896
原创 使用单链表来模拟栈
最近在B站学习尚硅谷的java数据结构与java算法课程,在学习到栈数据结构时,韩老师布置了一道小练习——使用单链表来模拟栈数据结构。
2021-08-28 11:59:59 507 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人