![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java练习
fafa_blessing
这个作者很懒,什么都没留下…
展开
-
(LeetCode)451.根据字符出现频率排序
有段时间没有刷题了,今天讨论完软件工程的大作业回来找了道题做了做,还挺激动的0_0class Solution { public String frequencySort(String s){ List<Count> count = new ArrayList<>(); char[] chArray = s.toCharArray(); System.out.println(count.size()); f原创 2021-04-16 23:03:53 · 153 阅读 · 0 评论 -
(LeetCode)二维数组练习
最近在搞编译原理的课程设计和信息检索的大作业~~有两三天没做题了,这就有点手生了……还是得勤加练习原创 2020-12-15 23:30:01 · 199 阅读 · 0 评论 -
(LeetCode)621. 任务调度器+字符串数组重排序
看到题目的瞬间想到了前几天做的一个类似的题目,记不太清题目了,大概题意是:将字符串数组重排序,相同的字母不能相邻。然后细细的读了一遍题目之后发现这两道题的差别还是很大的。将字符串数组重排序,相同的字母不能相邻这个还是挺容易想到的,相同字母不相邻,那就将相同的字母每隔一个位置放一个。首先要放的是出现次数最多的,从0开始隔一个放一个(如果超过了数组的长度,那么就说明没法完成题目的要求)。然后按出现的次数从大到小依次放置。(这道题是周二的每日一题。周二记得吧~~人工智能期末+隔天c++期末,所以只想了原创 2020-12-05 11:25:31 · 135 阅读 · 0 评论 -
(LeetCode)练习
QAQ最近有点意识不清醒,过的很迷……希望担心的事最终会有一个好结果两道简单题,读懂了题目很容易做。记起了StringBuffer。leetcode868public class Solution868 { public int binaryGap(int n) { int dis = 0; int mark=1; while(n!=0 && (n&1)!=1){ n=n>>1;原创 2020-11-25 23:49:10 · 60 阅读 · 0 评论 -
(LeetCode)695. 岛屿的最大面积-----DFS、沉岛思想
果然想要学跟需要学的差距不是一星半点……人工智能看得头大……还得是整道题清醒清醒先整一波改进记录……522ms(太菜了这个……class Solution { int[] arr = {-1,1,0,0}; public int maxAreaOfIsland(int[][] grid) { boolean[][] mark = new boolean[grid.length][grid[0].length]; for(int i = 0;i &原创 2020-11-23 00:10:18 · 114 阅读 · 0 评论 -
(LeetCode)147. 对链表进行插入排序
没有加头指针 public ListNode insertionSortList(ListNode head) { if(head == null){ return head; } ListNode point = head; ListNode tail = head; int count = 0; while(tail.next != null){ point原创 2020-11-20 21:30:25 · 44 阅读 · 0 评论 -
(LeetCode)1122. 数组的相对排序
我给跪了orzclass Solution { public int[] relativeSortArray(int[] arr1, int[] arr2) { int[] array = new int[arr1.length]; int count = 0; HashMap<Integer,HashSet<Integer>> hashMap = new HashMap<>(); for(int原创 2020-11-14 12:34:31 · 71 阅读 · 0 评论 -
(LeetCode)328. 奇偶链表
给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->3->4->5->NULL 输出: 1->3->5->2->4->NULL 示例 2:输入: 2->1->3->5->6->.原创 2020-11-13 20:01:07 · 74 阅读 · 0 评论 -
(LeetCode)973. 最接近原点的 K 个点——优先队列,自定义sort排序
我们有一个由平面上的点组成的列表 points。需要从中找出 K 个距离原点 (0, 0) 最近的点。(这里,平面上两点之间的距离是欧几里德距离。)你可以按任何顺序返回答案。除了点坐标的顺序之外,答案确保是唯一的。示例 1:输入:points = [[1,3],[-2,2]], K = 1 输出:[[-2,2]] 解释: (1, 3) 和原点之间的距离为sqrt(10), (-2, 2) 和原点之间的距离为 sqrt(8), 由于 sqrt(8) < sqrt(10),(-2, 2)离.原创 2020-11-09 09:06:21 · 220 阅读 · 0 评论 -
(LeetCode)1338. 数组大小减半——优先队列、HashMap、HashSet
给你一个整数数组 arr。你可以从中选出一个整数集合,并删除这些整数在数组中的每次出现。返回 至少 能删除数组中的一半整数的整数集合的最小大小。示例 1:输入:arr = [3,3,3,3,5,5,5,2,2,7]输出:2 解释:选择 {3,7} 使得结果数组为[5,5,5,2,2]、长度为 5(原数组长度的一半)。大小为 2 的可行集合有 {3,5},{3,2},{5,2}。选择 {2,7}是不可行的,它的结果数组为 [3,3,3,3,5,5,5],新数组长度大于原数组的二分之一。.原创 2020-11-08 17:26:27 · 100 阅读 · 0 评论 -
(LeetCode)23. 合并K个升序链表——两两合并、优先队列
给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。示例 1:输入:lists = [[1,4,5],[1,3,4],[2,6]] 输出:[1,1,2,3,4,4,5,6] 解释:链表数组如下: [1->4->5, 1->3->4, 2->6 ] 将它们合并到一个有序链表中得到。 1->1->2->3->4->4->5->6示例 2:输入:lists = [] 输出:[原创 2020-11-06 23:40:41 · 208 阅读 · 0 评论 -
(LeetCode)57. 插入区间——在区间列表中插入一个新的区间
给出一个无重叠的 ,按照区间起始端点排序的区间列表。在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。示例 1:输入:intervals = [[1,3],[6,9]], newInterval = [2,5] 输出:[[1,5],[6,9]] 示例示例 2:输入:intervals = [[1,2],[3,5],[6,7],[8,10],[12,16]], newInterval = [4,8]输出:[[1,2],[3,10],[12,16]].原创 2020-11-04 22:59:47 · 256 阅读 · 0 评论 -
(LeetCode)349. 两个数组的交集——涉及int[]与ArrayList转换问题,快排
给定两个数组,编写一个函数来计算它们的交集。Setclass Solution { public int[] intersection(int[] nums1, int[] nums2) { Set<Integer> set1 = new HashSet<>(); Set<Integer> resSet = new HashSet<>(); for (int i = 0; i < nu.原创 2020-11-02 19:43:07 · 102 阅读 · 0 评论 -
(LeetCode)139. 单词拆分——DFS/BFS/动态规划
给定一个非空字符串 s 和一个包含非空单词的列表 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。说明:拆分时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/word-break著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。思考DFS和BFS从来都是一个解决问题很好的方式,然而在解决此题某些案例的时候会出现超出时间限制的情况,.原创 2020-11-02 16:29:43 · 193 阅读 · 0 评论