- 博客(103)
- 资源 (16)
- 问答 (1)
- 收藏
- 关注
原创 57. 插入区间
给你一个 无重叠的 ,按照区间起始端点排序的区间列表。在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)
2022-07-02 19:54:48 381
原创 二分查找专题1
题目1给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例 2:输入: nums = [-1,0,3,5,9,12], target = 2输出: -1解释: 2 不存在 nums 中因此返回 -1提示:你可以假设 num.
2022-04-23 23:40:22 137
原创 单调栈系列-1124.表现良好的最长时间段
难度中等175收藏分享切换为英文接收动态反馈给你一份工作时间表 hours,上面记录着某一位员工每天的工作小时数。我们认为当员工一天中的工作小时数大于 8 小时的时候,那么这一天就是「劳累的一天」。所谓「表现良好的时间段」,意味在这段时间内,「劳累的天数」是严格 大于「不劳累的天数」。请你返回「表现良好时间段」的最大长度。示例 1:**输入:**hours = [9,9,6,0,6,6,9]**输出:**3**解释:**最长的表现良好时间段是 [9,9,6]。示例 2:**输入:**h.
2022-04-23 18:29:48 318
原创 单调栈-最大宽度坡
题目962. 最大宽度坡难度中等160收藏分享切换为英文接收动态反馈给定一个整数数组 A,坡是元组 (i, j),其中 i < j 且 A[i] <= A[j]。这样的坡的宽度为 j - i。找出 A 中的坡的最大宽度,如果不存在,返回 0 。示例 1:输入:[6,0,8,2,1,5]**输出:**4解释:最大宽度的坡为 (i, j) = (1, 5): A[1] = 0 且 A[5] = 5.示例 2:输入:[9,8,1,0,1,9,4,0,4,1]**输出:**7.
2022-04-05 21:37:33 741
原创 递归专题-二叉搜索树的后序遍历序列
题目剑指 Offer 33. 二叉搜索树的后序遍历序列输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回 true,否则返回 false。假设输入的数组的任意两个数字都互不相同。参考以下这颗二叉搜索树: 5/ \2 6/ 1 3示例 1:输入: [1,6,3,2,5]输出: false示例 2:输入: [1,3,2,6,5]输出: true提示:数组长度 <= 1000分析首先我们先看二叉搜索树的一些特点,第一点就是左子树的值都应.
2022-04-05 19:51:25 712
原创 单调栈-部分有序
题目面试题 16.16. 部分排序给定一个整数数组,编写一个函数,找出索引m和n,只要将索引区间[m,n]的元素排好序,整个数组就是有序的。注意:n-m尽量最小,也就是说,找出符合条件的最短序列。函数返回值为[m,n],若不存在这样的m和n(例如整个数组是有序的),请返回[-1,-1]。示例:输入: [1,2,4,7,10,11,7,12,6,7,16,18,19]输出: [3,9]提示:0 <= len(array) <= 1000000本题可以采用单调栈的思路,比如针对1,.
2022-04-03 23:39:45 498
原创 递归专项-栈排序
题目面试题 03.05. 栈排序栈排序。 编写程序,对栈进行排序使最小元素位于栈顶。最多只能使用一个其他的临时栈存放数据,但不得将元素复制到别的数据结构(如数组)中。该栈支持如下操作:push、pop、peek 和 isEmpty。当栈为空时,peek 返回 -1。示例1:输入:[“SortedStack”, “push”, “push”, “peek”, “pop”, “peek”][[], [1], [2], [], [], []]输出:[null,null,null,1,null,2.
2022-04-03 22:53:25 134
原创 递归专题-前序遍历构造二叉搜索树
题目:题目Id:1008题目:前序遍历构造二叉搜索树内容: //给定一个整数数组,它表示BST(即 二叉搜索树 )的 先序遍历 ,构造树并返回其根。给定一个整数数组,它表示BST(即 二叉搜索树 )的 先****序遍历 ,构造树并返回其根。保证 对于给定的测试用例,总是有可能找到具有给定需求的二叉搜索树。二叉搜索树 是一棵二叉树,其中每个节点, Node.left 的任何后代的值 严格小于 Node.val , Node.right 的任何后代的值 严格大于 Node.val。二叉树的 .
2022-04-03 20:44:43 1032
原创 隐私安全计算-不经意传输的原理与应用
不经意传输多方安全计算亿万富翁Alice和Bob,想知道谁更有钱,但是又不想暴露自己具体有多少资产,应该怎么办呢?这就是百万富翁问题。一般而言,最佳解法是通过不经意传输。不经意传输(Oblivious Transfer)我和张三打牌,但是我牌技不佳,总是输,为了让游戏更公平一点,我可以看张三一张牌的大小,但是我不想让张三知道我看的是哪一张,不然他可以有选择的出那张牌,导致我还是输。这时,我们就可以通过不经意传输的方法,来达到我看了一张牌,但是张三不知道我看的是哪张这个效果。实用中,常常简化为1
2022-03-28 23:21:51 13009 4
原创 单调栈系列1
单调栈在一维数组中找第一个满足某种条件的数,这种feel的东西一看就是单调栈题目1/** * 题目Id:739 * 题目:每日温度 * 内容: //给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指在第 i 天之后,才会有更高的温度//。如果气温在这之后都不会升高,请在该位置用 0 来代替。 //// //// 示例 1: //// //输入: temperatures = [73,74,75,71.
2022-03-27 17:56:11 251
原创 单调栈-每日温度
/** * 题目Id:739 * 题目:每日温度 * 内容: //给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指在第 i 天之后,才会有更高的温度//。如果气温在这之后都不会升高,请在该位置用 0 来代替。 //// //// 示例 1: //// //输入: temperatures = [73,74,75,71,69,72,76,73]//输出: [1,1,4,2,1,1,0,0]//.
2022-03-26 12:30:59 201
原创 并查集基础学习
图例简单描述一下:代码描述:package data.structure.unionfind;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Stack;public class UnionSet<V> { class Node<V> { private V val; public Node(V v..
2022-03-13 11:50:49 359
原创 递归: 如何逆序一个栈(不使用其余数据结构)
递归: 如何逆序一个栈(不使用其余数据结构)代码参考:package leetcode.editor.algorithms;import java.util.Stack;public class ReverseStack { public static void main(String[] args) { ReverseStack reverseStack = new ReverseStack(); Stack<Integer> st.
2022-03-12 13:10:12 785
原创 背包-最小不可组成和
题目:给定一个数组arr, 求出最小不可组成和比如数组arr [1,3,5,7], 其范围为[min,sum]即[1,16]最小不可组成和是2本题实际上是背包问题,可以使用递归,动态规划解决该题.代码:private int getMinCantCompose(int[] arr) { int min = Integer.MAX_VALUE; int sum = 0; for (int i = 0 ; i < arr.length; i+
2022-03-06 19:44:28 7611
TA创建的收藏夹 TA关注的收藏夹
TA关注的人