摘要: ###前提 以下ret为数组 ###JAVA Arrays.sort(ret,new Comparator<int[]>(){ public int compare(int[] a,int[] b){ return Math.abs(a[0] - r0) + Math.abs(a[1] - c0) 阅读全文
posted @ 2020-11-17 21:10 acchris 阅读(122) 评论(0) 推荐(0)
摘要: ###特殊的数据结构HashSet HashSet实现了Set接口,无序,是由HashMap实现的元素不可重复的集合。 ###运用HashSet 这里引入力扣的3.无重复字符的最长子串,HashSet在此题中完美地运用上了。 原题要找出无重复字符的最长子串,记录其长度并返回。 对于解法,我的认识是用 阅读全文
posted @ 2020-11-14 00:08 acchris 阅读(532) 评论(0) 推荐(0)
摘要: 总结 JAVA C++ Python HashSet unordered_set set 阅读全文
posted @ 2020-11-13 22:58 acchris 阅读(95) 评论(0) 推荐(0)
摘要: 总结 本题思路主要是找到 较小值(从后往前(下标n - 2开始)小于它后面的数的对应点i)找到i后再从后往前一遍(从n - 1开始),找到大于i的下标。之后对i和j进行swap,然后翻转i + 1及其后的数组。(由于先前第一次遍历时候,i后面的排序必是降序,故只需翻转) 在此附上代码及出处 JAVA 阅读全文
posted @ 2020-11-10 19:56 acchris 阅读(60) 评论(0) 推荐(0)
摘要: 升序 //以下nums为数组 1. JAVA的升序直接用Arrays.sort(nums)。 1. C++则是sort(start,end)。 * eg.`这里的start和end是地址参数,例如nums数组有5个元素,那么对其升序排序应该为sort(nums,nums+5);` 降序 1. JAV 阅读全文
posted @ 2020-11-10 15:03 acchris 阅读(825) 评论(0) 推荐(0)
摘要: ##一、JAVA的实现 JAVA二叉树的中序遍历,除了用递归,还可以用栈Deque来实现, 对栈常规操作有插入即push(),弹出栈顶元素即pop()方法,还有判断栈为空的stack.isEmpty()。 Deque<TreeNode> stack = new LinkList<TreeNode>( 阅读全文
posted @ 2020-11-07 16:17 acchris 阅读(236) 评论(0) 推荐(0)
摘要: ##总结分析 这道题当我看题目的时候,发现了可选可不选的时候,就想到了要用动态规划解决,奈何动态规划了解甚少。于是我尝试写了一下,发现只能通过第一个简单的测试案例。 最后看了官方题解,了解到动态规划一般分为两行,第一行是不选择当前值,第二行是选择。然后分别保存到两个变量值里。其实这题确实简单,但没接 阅读全文
posted @ 2020-11-06 22:15 acchris 阅读(86) 评论(0) 推荐(0)
摘要: ###题目背景 我第一次尝试力扣双周赛,结果以这道题告败。第38场双周赛第一题,简单题,我却答不出。。。。 ###题目解法 【c++】我看了一下别人的方法,C++一般是先用cnt数组计算出频率,然用sort(nums.begin(),nums.end(),自定义排序); class Solution 阅读全文
posted @ 2020-11-05 23:53 acchris 阅读(148) 评论(0) 推荐(0)
摘要: #【JAVA】参考题解 1.思路是这样子的,先用哈希表的key存下pieces的每一行的第一个元素即p【0】,然后value存放相应的一维数组; 2.然后遍历arr数组,先查看每个值是否在map中,若存在,则找到相应的一维数组,然后遍历一维数组;若不存在返回false; 3.遍历一维数组的时候,若中 阅读全文
posted @ 2020-11-03 22:49 acchris 阅读(94) 评论(0) 推荐(0)