模拟卷Leetcode【剑指 Offer】Offer_66. 构建乘积数组

Offer_day23_66. 构建乘积数组给定一个数组 A[0,1,…,n-1],请构建一个数组 B[0,1,…,n-1],其中 B[i] 的值是数组 A 中除了下标 i 以外的元素的积, 即 B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1]。不能使用除法。示例:输入: [1,2,3,4,5]输出: [120,60,40,30,24]提示:所有元素乘积之和不会溢出 32 位整数a.length <= 100000来源:力扣(Leet
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【剑指 Offer】Offer_67. 把字符串转换成整数

Offer_day26_67. 把字符串转换成整数写一个函数 StrToInt,实现把字符串转换成整数这个功能。不能使用 atoi 或者其他类似的库函数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可能会存在多余的字符,这些字符可以被忽略,它们对于
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【剑指 Offer】Offer_68 - I. 二叉搜索树的最近公共祖先

Offer_day19_68 - I. 二叉搜索树的最近公共祖先给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉搜索树:  root = [6,2,8,0,4,7,9,null,null,3,5]示例 1:输入: root = [6,2,8,0,4,7,9,nu
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【剑指 Offer】Offer_68 - II. 二叉树的最近公共祖先

Offer_day19_68 - II. 二叉树的最近公共祖先给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树:  root = [3,5,1,6,2,0,8,null,null,7,4]示例 1:输入: root = [3,5,1,6,2,0,8,null,nu
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】002. 两数相加

002. 两数相加给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 = [0]输出
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】003. 无重复字符的最长子串

003. 无重复字符的最长子串给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】005. 最长回文子串

005. 最长回文子串给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”示例 3:输入:s = “a”输出:“a”示例 4:输入:s = “ac”输出:“a”提示:1 <= s.length <= 1000s 仅由数字和英文字母(大写和/或小写)组成来源:力扣(LeetCode)链接:https://leetcode
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】008. 字符串转换整数 (atoi)

008. 字符串转换整数 (atoi)请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:读入字符串并丢弃无用的前导空格检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。 确定最终结果是负数还是正数。 如果两者都不存在,则假定结果为正。读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。将前面步骤读入
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】015. 三数之和

015. 三数之和给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输出:[]提示:0 <= n
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

【杂记】安装mupdf/mutool

官网下载地址:https://www.mupdf.com/downloads/index.html下载压缩包放到一个比较安全不会被删除的目录里比如我放在然后添加到系统环境变量里这样就可以直接在控制台里面用 mutool 这个指令了!...
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

【杂记】caj转pdf脚本报错解决办法

知网下载的caj转pdf得一个个手动转,而且转完了是图片格式的pdf,很不方便,所以找了个python的脚本把caj转pdf。但是发现九成以上的都会转失败,except报错windows找不到文件。其实找不到的是心路历程如下:逐步调试发现错误报错的是kdh和caj格式的文件 def convert(self, dest): dest = str(dest) print('format:',self.format,end=' ') if sel
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】019. 删除链表的倒数第 N 个结点

019. 删除链表的倒数第 N 个结点给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]提示:链表中结点的数目为 sz1 <= sz <= 300 <= Node.val &l
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】022. 括号生成

022. 括号生成数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。有效括号组合需满足:左括号必须以正确的顺序闭合。示例 1:输入:n = 3输出:["((()))","(()())","(())()","()(())","()()()"]示例 2:输入:n = 1输出:["()"]提示:1 <= n <= 8来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/gen
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】024. 两两交换链表中的节点

024. 两两交换链表中的节点给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:输入:head = [1,2,3,4]输出:[2,1,4,3]示例 2:输入:head = []输出:[]示例 3:输入:head = [1]输出:[1]提示:链表中节点的数目在范围 [0, 100] 内0 <= Node.val <= 100进阶:你能在不修改链表节点值的情况下解决这个问题吗?(也就是说,
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】029. 两数相除

029. 两数相除给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2示例 1:输入: dividend = 10, divisor = 3
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】036. 有效的数独

036. 有效的数独请你判断一个 9x9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图)数独部分空格内已填入了数字,空白格用 ‘.’ 表示。注意:一个有效的数独(部分已被填充)不一定是可解的。只需要根据以上规则,验证已经填入的数字是否有效即可。示例 1:输入:board =[["5","3",".",".","
分类: 其他 发布时间: 11-29 09:46 阅读次数: 0

模拟卷Leetcode【普通】038. 外观数列

038. 外观数列给定一个正整数 n ,输出外观数列的第 n 项。「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。你可以将其视作是由递归公式定义的数字字符串序列:countAndSay(1) = “1”countAndSay(n) 是对 countAndSay(n-1) 的描述,然后转换成另一个数字字符串。前五项如下:1. 12. 113. 214. 12115. 111221第一项是数字 1描述前一项,这
分类: 其他 发布时间: 11-29 09:45 阅读次数: 0

模拟卷Leetcode【普通】045. 跳跃游戏 II

045. 跳跃游戏 II给你一个非负整数数组 nums ,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。假设你总是可以到达数组的最后一个位置。示例 1:输入: nums = [2,3,1,1,4]输出: 2解释: 跳到最后一个位置的最小跳跃数是 2。  从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。
分类: 其他 发布时间: 11-29 09:45 阅读次数: 0

模拟卷Leetcode【普通】046. 全排列

046. 全排列给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。示例 1:输入:nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2:输入:nums = [0,1]输出:[[0,1],[1,0]]示例 3:输入:nums = [1]输出:[[1]]提示:1 <= nums.length <= 6-10 <= nums[i] &
分类: 其他 发布时间: 11-29 09:45 阅读次数: 0

模拟卷Leetcode【普通】054. 螺旋矩阵

054. 螺旋矩阵输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。示例 1:输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]示例 2:输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7]限制:0 <= matrix.length <= 1000 <= matrix[i].le
分类: 其他 发布时间: 11-29 09:45 阅读次数: 0