
leetcode
我是十二
愿你遍历山河 觉得人间值得
展开
-
35.搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出: 4示例 4:输入: [1,3,5,6], 0输出: 0题解class Solution: def searchInsert(self, num原创 2020-08-21 17:30:10 · 122 阅读 · 0 评论 -
674. 最长连续递增序列
给定一个未经排序的整数数组,找到最长且连续的的递增序列,并返回该序列的长度。示例 1:输入: [1,3,5,4,7]输出: 3解释: 最长连续递增序列是 [1,3,5], 长度为3。尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为5和7在原数组里被4隔开。示例 2:输入: [2,2,2,2,2]输出: 1解释: 最长连续递增序列是 [2], 长度为1。注意:数组长度不会超过10000。题解遍历,用一个变量记录递增的最大值。再用一个变量实时记录递增的情况。原创 2020-08-21 16:41:16 · 133 阅读 · 0 评论 -
剑指offer53 - II. 0~n-1 中缺失的数字
一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。示例 1:输入: [0,1,3]输出: 2示例 2:输入: [0,1,2,3,4,5,6,7,9]输出: 8限制:1 <= 数组长度 <= 10000思路数组 , 有序 , 考虑二分查找。复杂度分析:时间复杂度 O(log N)O(logN): 二分法为对数级别复杂度。空间复杂度 O(1)O(1)原创 2020-08-20 17:17:29 · 172 阅读 · 0 评论 -
1144.递减元素使数组呈锯齿状
title: 1144.递减元素使数组呈锯齿状categories:leetcodearraytags:leetcodearraycover: ‘http://cnd.nanpy.top/post23.jpg’date: 2020-08-19 16:17:00以输入样例 [9, 6, 1, 6, 2] 为例,检查奇数位置,可以将第一个元素 9 减小到 5,如果检查偶数位置,则需要将两个 6 减小到 0。class Solution: def movesToMakeZig.原创 2020-08-20 16:26:51 · 129 阅读 · 0 评论 -
104. 二叉树的最大深度
二叉树的遍历二叉树的遍历方式主要有:先序遍历、中序遍历、后序遍历、层次遍历。深度优先遍历 DFS(Depth-First-Search)DFS 有三种先序遍历:遍历顺序规则为【根左右】中序遍历:遍历顺序规则为【左根右】后序遍历:遍历顺序规则为【左右根】递归先序遍历 (用栈的方式实现)如果我们知道了根节点的 左子树,右子树的 最大深度 l,r,那么该二叉树的最大深度为max(l,r) + 1而左子树,右子树的最大深度,同样也可以通过上述的方式计算出来。递归在访问到空节点时 退出。原创 2020-07-29 16:32:38 · 151 阅读 · 0 评论