面试经典题21
题目描述: 代码: package interview;/** * @author hxw * @create 2025-05-06-8:40 * @Description: 151. 反转字符串中的单词 中等 */public class one_hundred_and_fifty_one { public static void main(String[] args) { String s = "Let's take LeetCode contest "; String result = new Solution().reverseWords(s); System.out.println(result); } /** * 目的:给你一个字符串 s ,请你反转字符串中 单词 的顺序。 * 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 * 返回 单词 顺序颠倒且 单词...
面试经典题20
题目描述: 代码: package interview;/** * @author hxw * @create 2025-05-06-8:33 * @Description: 14. 最长公共前缀 简单 */public class fourteen { public static void main(String[] args) { String[] strs = new String[]{"dog","racecar","car"}; System.out.println(new Solution().longestCommonPrefix(strs)); } /** * 目的:编写一个函数来查找字符串数组中的最长公共前缀。 * 如果不存在公共前缀,返回空字符串 ""。 * *...
面试经典题19
题目描述: 代码: package interview;/** * @author hxw * @create 2025-05-06-8:28 * @Description: 58. 最后一个单词的长度 简单 */public class fifty_eight { public static void main(String[] args) { System.out.println(Solution.lengthOfLastWord("Hello World")); } /** * 目的:给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度 * 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 * <p> * 思路:空格拆分 */ class Solution { public static int lengthOfLastWord(String s)...
面试经典题18
题目描述: 代码: package interview;/** * @author hxw * @create 2025-05-05-21:22 * @Description: 12. 整数转罗马数字 中等 */public class twelve { public static void main(String[] args) { } /** * 目的:七个不同的符号代表罗马数字,其值如下: * <p> * 符号 值 * I 1 * V 5 * X 10 * L 50 * C 100 * D 500 * M 1000 * 罗马数字是通过添加从最高到最低的小数位值的转换而形成的。将小数位值转换为罗马数字有以下规则: * <p> * 如果该值不是以 4 或 9...
面试经典题17
题目介绍: 代码: package interview;/** * @author hxw * @create 2025-05-05-20:55 * @Description: 13. 罗马数字转整数 简单 */public class thirteen { public static void main(String[] args) { System.out.println(new Solution().romanToInt("MCMXCIV")); } /** * 目的:罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 * <p> * 字符 数值 * I 1 * V 5 * X 10 * L 50 * C 100 * D 500 ...
面试经典题16
题目描述: 代码: package interview;/** * @author hxw * @create 2025-05-05-20:48 * @Description: 42. 接雨水 困难 */public class forty_two { public static void main(String[] args) { int[] height = new int[]{4,2,0,3,2,5}; System.out.println(new Solution().trap(height)); } /** * 目的:给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 * * 思路: 从左到右遍历,记录每个柱子左边最高的柱子,从右到左遍历,记录每个柱子右边最高的柱子,然后求出每个柱子能接的雨水量, */ static class Solution { public...
面试经典题15
题目描述: 代码: package interview;/** * @author hxw * @create 2025-05-05-0:16 * @Description: 135. 分发糖果 困难 */public class one_hundred_and_thirty_five { public static void main(String[] args) { int[] ratings = new int[]{1, 0, 2}; System.out.println(new Solution().candy(ratings)); } /** * 目的:n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 * 你需要按照以下要求,给这些孩子分发糖果: * 每个孩子至少分配到 1 个糖果。 * 相邻两个孩子评分更高的孩子会获得更多的糖果。 * 请你给每个孩子分发糖果,计算并返回需要准备的 最少糖果数目 。 ...
面试经典题14
题目描述: 代码: package interview;/** * @author hxw * @create 2025-05-05-0:06 * @Description: 134. 加油站 中等 */public class one_hundred_and_thirty_four { public static void main(String[] args) { int[] gas = new int[]{2,3,4}; int[] cost = new int[]{3,4,3}; System.out.println(new Solution().canCompleteCircuit(gas, cost)); } /** * 目的:在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 * 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i]...
面试经典题13
题目描述: 代码: package interview;/** * @author hxw * @create 2025-05-04-23:38 * @Description: 238. 除自身以外数组的乘积 中等 */public class two_hundred_and_thirty_eight { public static void main(String[] args) { int[] nums = new int[]{-1, 1, 0, -3, 3}; int[] answer = new Solution().productExceptSelf(nums); for (int i = 0; i < answer.length; i++) { System.out.println(answer[i]); } } /** * 目的:给你一个整数数组 nums,返回 数组 answer...
面试经典题12
题目描述: 代码: package interview;import java.util.*;/** * @author hxw * @create 2025-05-03-20:11 * @Description: 380. O(1) 时间插入、删除和获取随机元素 中等 */public class there_hundred_and_eighty { public static void main(String[] args) { RandomizedSet obj = new RandomizedSet(); boolean param_1 = obj.insert(1); boolean param_2 = obj.remove(2); boolean param_3 = obj.insert(2); int param_4 = obj.getRandom(); boolean param_5 = obj.remove(1); boolean...