leetcode
李柒岁
这个作者很懒,什么都没留下…
展开
-
【leetcode】148.链表归并排序C语言实现O(n log n) 时间复杂度和常数级空间复杂度
题目出处题目要求:在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。以下评论来自leetcode @Allen个人感觉受益匪浅,本文在此思路上用C语言实现了对链表的归并排序,并对一些细节做出了补充说明。bottom-to-up 的归并思路是这样的:先两个两个的 merge,完成一趟后,再 4 个4个的 merge,直到结束。举个简单的例子:[4,3,1,7,8,9,2,11,5,6].step=1: (3->4)->(1->7)->(8->9原创 2020-09-19 16:24:16 · 387 阅读 · 0 评论 -
【leetcode】1491. 去掉最低工资和最高工资后的工资平均值 C语言实现+思路分析
题目给你一个整数数组 salary ,数组里每个数都是 唯一 的,其中 salary[i] 是第 i 个员工的工资。请你返回去掉最低工资和最高工资以后,剩下员工工资的平均值。与真实值误差在 10^-5 以内的结果都将视为正确答案。思路:模拟1.先找到最大最小工资2.再算平均值代码:double average(int* salary, int salarySize){ int max=0; int min=1000001; int MAX; int MIN原创 2020-08-05 11:21:26 · 509 阅读 · 0 评论 -
【leetcode】AddressSanitizer: heap-buffer-overflow on address所引出的问题思考[1528.重新排列字符串]
最近在leetcode上写题,当写到第1528题时突然出现也就是堆内存溢出heap-buffer-overflow on address可是在自己的vscode上却没有一点问题。1528. 重新排列字符串题目给你一个字符串 s 和一个 长度相同 的整数数组 indices 。请你重新排列字符串 s ,其中第 i 个字符需要移动到 indices[i] 指示的位置。返回重新排列后的字符串。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/s原创 2020-08-04 10:25:48 · 587 阅读 · 0 评论 -
【leetcode】237_链表删除当前结点C语言实现
题目请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。由于函数参数只给定要求被删除的节点,所以我们可以这样想:如何让自己在世界上消失,但又不死? —— 将自己完全变成另一个人,再杀了那个人就行了。以上摘自leetcode评论区翻译过来便是:node这个节点就是需要删除的节点;之前我们可以用head->next->val去判断下一个是否是删除的节点,然后head->next=head->next->next,这题可以用把原创 2020-07-24 12:02:36 · 176 阅读 · 0 评论 -
【leetcode】239/剑指offer59_滑动窗口的最大值_C语言代码+注释
滑动窗口的最大值题目给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。进阶:你能在线性时间复杂度内解决此题吗?示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7] 解释: 滑动窗口的位置 最大值--------------- ---原创 2020-07-23 21:46:09 · 790 阅读 · 1 评论 -
【leetcode】剑指offer30 包含min函数的栈
题目出处定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。示例:MinStack minStack = new MinStack();minStack.push(-2);minStack.push(0);minStack.push(-3);minStack.min(); --> 返回 -3.minStack.pop();minStack.top(); --> 返回 0原创 2020-07-21 20:35:15 · 88 阅读 · 0 评论