上一页 1 2 3 4 5 6 7 8 9 ··· 27 下一页
摘要: 题目: 在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 思路: 第 k 个最大的元素 : 就是排序后倒数第几个,我们用数组长度 - k 得出 正数第几个 运用优先队列,入队排序 再出队 (数组长度 - k) 次 返回 下一 阅读全文
posted @ 2021-06-25 15:53 朝才 阅读(176) 评论(0) 推荐(0)
摘要: 题目: 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 思路: (一)分四种情况,效率较低 用数组 将数据放入List 集合 进行判断 1 list 只有一条数据,直接让头指针指向空 2 删除数据为 倒数第一个 , 就让倒数第一个node 的 前一个 node.next = nu 阅读全文
posted @ 2021-06-24 17:05 朝才 阅读(112) 评论(0) 推荐(0)
摘要: 题目: 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 思路: dfs + 回溯 + 剪枝 (一)代码 class Solution { pu 阅读全文
posted @ 2021-06-23 15:57 朝才 阅读(35) 评论(1) 推荐(0)
摘要: 题目: 给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。 思路: 遍历数组时,不断更新最大值 当出现负数时,最大值会变为最小值,需要维护一个最小值 动态规划:能够保存已解决的子问题的答案,而在需要时再找出已求得的答案, 这样 阅读全文
posted @ 2021-06-23 13:56 朝才 阅读(47) 评论(1) 推荐(0)
摘要: 题目: 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 思路: 1 快慢指针找到相遇点。 2 一个从相遇点单步走,一个从头指针单步走,再次相遇的地方就是入环的第一个node (一) 代码 今天的午饭真难吃 新能源和科技又大涨了 阅读全文
posted @ 2021-06-23 12:11 朝才 阅读(67) 评论(0) 推荐(0)
摘要: 题目: 思路: 复制一个数组 进行排序 将排序后的数组与原数组从两边同时比较 减去两边部分有序的,就是剩下需要排序的 (一)代码 浑浑噩噩的每一天 阅读全文
posted @ 2021-06-22 17:13 朝才 阅读(40) 评论(0) 推荐(0)
摘要: 题目: 思路: 1 暴力解决 2 前缀和 + hash表 (一)代码 暴力 (二)代码 前缀和 前缀和 s[i] = s[i-1] + nums[i] 阅读全文
posted @ 2021-06-21 19:18 朝才 阅读(32) 评论(0) 推荐(0)
摘要: 题目: 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 思路: 1 暴力遍历 从前往后 第一个 从后往前第一个 2 二分法 + 递归 (一) 代码 二分法+递归 cla 阅读全文
posted @ 2021-06-20 20:29 朝才 阅读(129) 评论(0) 推荐(0)
摘要: 题目: 思路: 1 深度优先遍历 回溯算法 剪枝 递归 回溯思想:回溯在迷宫搜索中使用很常见,就是这条路走不通,然后返回前一个路口,继续下一条路 (一)代码 工体爱情故事 阅读全文
posted @ 2021-06-19 23:12 朝才 阅读(68) 评论(0) 推荐(0)
摘要: 题目: 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 思路: 1 运用hash表 key 存元素 value 存次数 2 将无重复的元素存入list 3 运用Collections.sort 根据value的大小进行排序 (一) 阅读全文
posted @ 2021-06-19 16:13 朝才 阅读(43) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 9 ··· 27 下一页