剑指 Offer 09. 用两个栈实现队列一、解题思路 1、【队列是先入先出,栈是后入先出】 stackA: 入队栈,入队操作,直接压入入队栈即可 stackB: 出队栈,出队操作需要优先检查出队栈是否有数据,若无,需要从入队栈倒入后再操作。 2、(1)加入队尾 appendTail()函数: 将数字 val 加入栈 A 即可。 (2)删除队首deleteHead()函数: 有以下三种情况。当栈
转载
2023-10-07 23:31:12
15阅读
1.给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
示例 1:
输入:nums = [2,7,11,15], target = 9
输出:[0,1]
解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。
示例 2:输入:nums = [3,2,4], target
转载
2024-01-13 06:24:31
170阅读
近期在刷力扣官网的这份题,因为我是因为报名了蓝桥杯才刷算法题的,所以我会选择性地写一些题解 (不包括太简单的、太难的、不在我考试范围的)以下都是我觉得比较有思考价值的题 字符串 1. 验证回文串【问题描述】 如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和
转载
2024-01-09 11:15:47
48阅读
目录1、回文数13、罗马数字转整数14、最长的公共前缀20、有效的括号26、删除有序数组中的重复项27、移除元素35、搜索插入位置58、最后一个单词的长度66、加一67、二进制求和69、x的平方根70、爬楼梯118、杨辉三角119、杨辉三角Ⅱ 返回「杨辉三角」的第 rowIndex 行121、买卖股票的最好时机125、验证回文串136、只出现一次的数字168、Excel表列名称169、
转载
2023-08-17 09:19:41
22阅读
# 力扣题库Java PDF
在学习算法和数据结构的过程中,力扣(LeetCode)是一个非常好的资源。它提供了大量的题目和解答,可以帮助我们理解各种算法和数据结构的原理和实现。对于Java程序员来说,使用Java语言解决力扣题目是一种常见的练习方式。有时候我们也希望将力扣题库中的题目和解答导出为PDF格式,以便离线学习和查阅。本文将介绍如何使用Java编程语言实现将力扣题库导出为PDF的功能。
原创
2024-07-12 05:46:43
109阅读
文章目录一、数组1 两数之和53 最大子数组和121 买卖股票的最佳时机136 只出现一次的数字169 多数元素283 移动零448 找到所有数组中消失的数字二、字符串20 有效的括号 一、数组1 两数之和nums = []
nums = list(map(int, input().split()))
target = int(input())
sum = 0
for i in range(le
转载
2023-10-26 12:59:15
16阅读
1.给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。输入: [2,2,1] 输出: 1解:采用异或^操作,即相异才为1,相同为0 ,两个相同元素相与运算后为0 ,剩下的那一个元素与只出现了一次的元素一定不同,则异或后一定为只出现了一次的那个值。#include <iostream>
#include<vector&
转载
2023-10-07 21:42:04
199阅读
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]class Solut...
原创
2021-06-10 17:34:17
87阅读
多数元素给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入: [3,2,3]输出: 3示例 2:输入: [2,2,1,1,1,2,2]输出: 2#O(nlogn)class Solution(object): def majorityElem...
原创
2021-06-10 17:38:40
164阅读
# 如何在力扣上使用Python
## 一、整体流程
为了在力扣上使用Python进行算法题解,我们需要按照以下步骤进行操作:
| 步骤 | 描述 |
| --- | --- |
| 1 | 创建一个力扣账号 |
| 2 | 登录力扣账号 |
| 3 | 在题目列表中选择一道题目 |
| 4 | 阅读题目描述和示例 |
| 5 | 编写解题代码并测试 |
| 6 | 提交代码并查看结果 |
原创
2023-11-12 10:21:43
228阅读
力扣会员sql题使用MySQL 8.0窗口函数解决 对于排序问题,常用的有三种窗口函数,以数值4,5,5,6为例: ROW_NUMBER(): 求行数,结果为1,2,3,4 RANK(): 有间隔的分级,结果为1,2,2,4 DENSE_RANK(): 无间隔的分级,结果为1,2,2,3 使用这些窗口函数时,要用over设定窗口,用法为:function OVER windowName
WINDO
转载
2024-01-28 00:47:35
43阅读
回文数判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。进阶...
原创
2021-06-10 17:38:01
148阅读
拼写单词给你一份『词汇表』(字符串数组) words 和一张『字母表』(字符串) chars。假如你可以用 chars 中的『字母』(字符)拼写出 words 中的某个『单词』(字符串),那么我们就认为你掌握了这个单词。注意:每次拼写时,chars 中的每个字母都只能用一次。返回词汇表 words 中你掌握的所有单词的 长度之和。示例 1:输入:words = [“cat”,“bt...
原创
2021-06-10 17:39:23
144阅读
全排列给定一个 没有重复 数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]class Solution: def permute(self, nums: List[int]) -> List[List[int]]: re...
原创
2021-06-10 17:40:11
101阅读
反转链表反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?class Solution(object): # 迭代 def reverseList(self, head): ...
原创
2021-06-10 17:36:13
106阅读
矩形重叠矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标。如果相交的面积为正,则称两矩形重叠。需要明确的是,只在角或边接触的两个矩形不构成重叠。给出两个矩形,判断它们是否重叠并返回结果。示例 1:输入:rec1 = [0,0,2,2], rec2 = [1,1,3,3]输出:true示例 2:输入...
原创
2021-06-10 17:39:22
347阅读
移除元素给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两...
原创
2021-06-10 17:40:10
76阅读
跳跃游戏给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例 1:输入: [2,3,1,1,4]输出: true解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。示例 2:输入: [3,2,1,0,4]输出: false解释: 无论怎...
原创
2021-06-10 17:40:11
209阅读
整数反转给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。通过次数287,8...
原创
2021-06-10 17:36:14
84阅读
生命游戏根据 百度百科 ,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1 即为活细胞(live),或 0 即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律:如果活细胞周围八个位置的活细胞数少于两个,则...
原创
2021-06-10 17:39:08
107阅读