律师来之前我是不会说一句话的
律师来之前我是不会说一句话的
全部文章
力扣
剑指Offer(22)
未归档(1)
归档
标签
去牛客网
登录
/
注册
史航的个人博客
只管努力,余下的交给时间吧。
全部文章
/ 力扣
(共70篇)
力扣 215. 数组中的第K个最大元素
题目描述: 给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 解析: 小顶堆1.新建一个存放k个元素的小顶堆,遍历数组,将数组中的元素加入堆中,然后保持堆的大小为k2.当堆已经满了之后,数组中的元...
2021-09-14
0
470
力扣 236. 二叉树的最近公共祖先
题目描述: 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 解析: 1.如果根节点为空或者根节点等于p...
2021-09-14
0
243
力扣 235. 二叉搜索树的最近公共祖先
题目描述: 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 解析: 1.如果p和q相等,直接返回p...
2021-09-14
0
257
力扣 123. 买卖股票的最佳时机 III
题目描述: 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 解析: 动态规划 Java: public int maxProfit(int[...
2021-09-14
0
325
力扣 122. 买卖股票的最佳时机 II
题目描述: 给定一个数组 prices ,其中 prices[i] 是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 解析: 贪心算法1.定义一个变量prof...
2021-09-14
0
362
力扣 121. 买卖股票的最佳时机
题目描述: 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返...
2021-09-12
0
278
力扣 92. 反转链表 II
题目描述: 给你单链表的头指针 head 和两个整数 left 和 right ,其中 left <= right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。 解析: Java: public ListNode reverseBetween(Lis...
2021-09-12
0
400
力扣 206. 反转链表
题目描述: 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 解析: Java: public ListNode reverseList(ListNode head) { ListNode prev = null; ListNode curr =...
2021-09-11
0
313
力扣 83. 删除排序链表中的重复元素
题目描述: 存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 。返回同样按升序排列的结果链表。 解析:1.定义指针curr指向头节点2.while循环整个链表,判断指针指的值是否和下一个值相等如果相等,则当前指针curr所指的节点指向下下个节...
2021-09-10
0
247
力扣 73. 矩阵置零
题目描述: 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 解析: 1.检查并标记第一行和第一列是否有零(firstColHasZero和firstRowHasZero)2.使用第一行和第一列,来标记其余行列是否含有零3.接下来,利用...
2021-09-10
0
260
首页
上一页
1
2
3
4
5
6
7
下一页
末页