我的leetcode题解
VanillaII
这个作者很懒,什么都没留下…
展开
-
leetcode LCP 03. 机器人大冒险 -java
leetcode LCP 03. 机器人大冒险 -java 解题思路 首先先计算出一轮指令向右和向上的步长,后面的每一个循环完成都是移动相同的步长,用于统计障碍物和目标所在的区间。 然后循环每一个障碍物,判断是否可达。 最后判断终点是否可达 时间复杂度 O(m * n) m 为指令的长度,n为障碍物长度 空间复杂度 O(1) 只保存了步长; // An highlighted block class Solution { public boolean robot(String command, in原创 2020-07-12 18:39:19 · 148 阅读 · 0 评论 -
Z 字形变换-java leetcode
下一个排列-java leetcode // An highlighted block class Solution { public void nextPermutation(int[] nums) { if(nums.length < 2){ return; } //是否已经是最大的 boolean max = true; int i = nums.length - 2 ;原创 2020-07-12 18:36:04 · 143 阅读 · 0 评论 -
归并排序-java
归并排序-java // An highlighted block void mergeSort(int[] nums,int start, int end) { if (start == end) { return; } int middle = (start + end) / 2; mergeSort(nums, start, middle); mergeSort(nums, middle +原创 2020-07-12 17:49:28 · 87 阅读 · 0 评论 -
快速排序算法-java
快速排序算法-java // An highlighted block void fastSort(int[] nums, int start, int end) { if (start >= end) { return; } //基准 int p = nums[start]; //左右游标 int i = start; int j = end;原创 2020-07-12 17:45:41 · 118 阅读 · 0 评论 -
马拉松算法 - 最长回文子串-java
马拉松算法 - 最长回文子串-java 算法解释的链接 链接: link. 下面是java代码。 // An highlighted block class Solution { public String longestPalindrome(String s) { String str = preHandleString(s); int len = str.length(); //当前的最右和最右的中心点 int right = 0;原创 2020-07-12 17:41:26 · 199 阅读 · 0 评论