leetcode
繁花郁晴
这个作者很懒,什么都没留下…
展开
-
【leetcode】【初级算法】【其他2】汉明距离
二进制数统计1的个数:n & (n-1)== n-1原创 2022-10-21 14:17:28 · 349 阅读 · 0 评论 -
【leetcode】【初级算法】【其他1】位1的个数
位运算特性原创 2022-10-21 10:26:23 · 81 阅读 · 0 评论 -
【leetcode】【初级算法】【数学4】罗马数字转整数
罗马数字转整数。map原创 2022-10-20 11:30:03 · 81 阅读 · 0 评论 -
【leetcode】【初级算法】【数学3】3的幂
3的幂,两种方法:(循环,递归)、(判断是否是最大3的幂的约数,此方法适用于质数)原创 2022-10-20 11:05:46 · 166 阅读 · 0 评论 -
【leetcode】【初级算法】【数学2】计算质数:暴搜、埃氏筛
计数质数:暴搜、埃氏筛原创 2022-10-19 12:11:14 · 125 阅读 · 0 评论 -
【leetcode】【初级算法】【数学1】Fizz Buzz
fizz buzz原创 2022-10-18 15:52:10 · 305 阅读 · 0 评论 -
【leetcode】【初级算法】【设计问题】打乱数组、最小栈
设计问题 打乱数组 最小栈原创 2022-10-18 15:31:44 · 279 阅读 · 0 评论 -
【leetcode】【初级算法】【动态规划4】打家劫舍
打家劫舍 动态规划原创 2022-10-14 13:49:47 · 108 阅读 · 0 评论 -
【leetcode】【初级算法】【动态规划3】最大子序和
最大子序和原创 2022-10-14 13:34:34 · 144 阅读 · 0 评论 -
【leetcode】【初级算法】【动态规划2】买股票的最佳时机2
题目买卖股票的最佳时机给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。示例 1:输入:[7,1,5,3,6,4]输出:5解释:在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。原创 2022-10-12 23:02:28 · 74 阅读 · 0 评论 -
【leetcode】【初级算法】【动态规划1】爬楼梯
动态规划 斐波那契 爬楼梯原创 2022-10-11 11:10:21 · 253 阅读 · 0 评论 -
【leetcode】【搜索】二分查找:第一个错误版本
搜索:二分查找:第一个错误版本问题。原创 2022-10-10 14:45:11 · 105 阅读 · 0 评论 -
【leetcode】【初级算法】【排序】原地合并两有序数组 ,双指针,sort,从后往前
合并两个有序数组给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。题解class Solution原创 2022-09-29 10:08:48 · 132 阅读 · 0 评论 -
【leetcode】【初级算法】【树5】将有序数组转换为二叉搜索树
题目将有序数组转换为二叉搜索树给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。分析:目的 :把一个有顺序的数组,变成一个高度平衡的二叉树方法:中序遍历 用递归的方法。涉及比大小的问题 所以递归helper函数的参数就可以设置为左右范围。题解/** * Definition for a binary tree node. * public class原创 2022-09-28 11:13:26 · 167 阅读 · 0 评论 -
【leetcode】【初级算法】【树4】102.二叉树的层次遍历
题目二叉树的层序遍历给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。题解class Solution { public List<List<Integer>> levelOrder(TreeNode root) { // 可以理解为 list中 存放list List<List<Integer>> ret = new ArrayList<List<I原创 2022-09-27 13:07:41 · 88 阅读 · 0 评论 -
【leetcode】【初级算法】【树3】101 对称二叉树
题解方法一 递归class Solution: def isSymmetric(self, root: Optional[TreeNode]) -> bool: # 对称二叉树 两种方法 第一种递归 写一个函数 传入左和右 # 判断是否都为空 返回true 判断有一个是空一个不是返回false 判断左和右的值是不是相等 不相等直接退出 相等再递归 if not root: return True de原创 2022-09-26 09:49:46 · 97 阅读 · 0 评论 -
【leetcode】【初级算法】【树2】验证二叉搜索树
验证二叉搜索树原创 2022-09-25 11:00:43 · 726 阅读 · 0 评论 -
【leetcode】【初级算法】【树】二叉树最大深度
二叉树最大深度,深度优先 递归。广度优先遍历(队列)原创 2022-09-24 11:55:19 · 95 阅读 · 0 评论 -
【leetcode】【初级算法】【链表6】环形链表
题目环形链表给你一个链表的头节点 head ,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。如果链表中存在环 ,则返回 true 。 否则,返回 false 。题解两种方法:哈希表、快慢指针哈希表java解public class Solution { pu原创 2022-09-23 10:10:03 · 151 阅读 · 0 评论 -
【leetcode】【初级算法】【链表5】回文链表
回文链表 用到了反转链表 和 选出链表指定节点 的知识原创 2022-09-20 14:41:52 · 319 阅读 · 0 评论 -
【leetcode】【初级算法】【链表4】合并有序链表 递归和迭代
合并有序链表原创 2022-09-19 13:37:05 · 103 阅读 · 0 评论 -
【leetcode】【初级算法】【链表3】反转链表
反转链表:遍历和递归原创 2022-09-18 14:00:40 · 260 阅读 · 0 评论 -
【leetcode】【初级算法】【链表2】19删除链表的倒数第N个结点
题目题解 # 有三种方法 # 第一种是 计数 写一个函数 得到 链表的长度 在主函数中根据"索引"的位置删除 # 第二种是 双指针 快慢指针同时指向dummy 快指针先移动n,然后两个指针同时移动 删除慢指针指向 # 第三种是 栈 节点的进栈出栈不影响链表的连接方法一 计数py解# Definition for singly-linked list.# class ListNode:# def __init__(sel原创 2022-09-17 13:22:38 · 207 阅读 · 0 评论 -
【leetcode】【初级算法】【链表1】删除链表中的节点(头节点未知)
题目java题解删除链表中的节点有一个单链表的 head,我们想删除它其中的一个节点 node。给你一个需要删除的节点 node 。你将 无法访问 第一个节点 head。链表的所有值都是 唯一的,并且保证给定的节点 node 不是链表中的最后一个节点。删除给定的节点。注意,删除节点并不是指从内存中删除它。这里的意思是:给定节点的值不应该存在于链表中。链表中的节点数应该减少 1。node 前面的所有值顺序相同。node 后面的所有值顺序相同。/** * Definition for原创 2022-09-16 16:36:44 · 301 阅读 · 0 评论 -
【leetcode】【初级算法】【字符串9】最长公共前缀
题目最长公共前缀编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入:strs = [“flower”,“flow”,“flight”]输出:“fl”示例 2:输入:strs = [“dog”,“racecar”,“car”]输出:""解释:输入不存在公共前缀。题解一:横向扫描自己写的,是官方题解的方法一,前两个字符串先比较出最长公共前缀,再把公共前缀跟下一个比较。java解class Solution { public S原创 2022-09-16 16:04:50 · 1028 阅读 · 0 评论 -
【leetcode】【初级算法】【字符串8】外观数组,每一个输出都是前一个的描述。
这道题可以让你理清java中String和StringBuilder的区别、int转String的方法:Integer.toStrinf(123)。python中str的连接方式(直接用加号),int转str的方式str(123),以及区分str不是list。原创 2022-09-09 14:54:07 · 122 阅读 · 0 评论 -
【leetcode】【初级算法】【字符串7】实现strStr()
实现在字符串中找模式串,python中有find函数,java有indexOf函数。此题的方法有两种:暴力搜索、KMP算法原创 2022-09-08 17:26:49 · 277 阅读 · 0 评论 -
【leetcode】【初级算法】【字符串6】字符串转换整数
【leetcode】【初级算法】【字符串6】字符串转换整数atoi原创 2022-09-07 15:58:18 · 80 阅读 · 0 评论 -
【leetcode】【初级算法】【字符串5】验证回文
验证回文。java中Character类的使用。S.charAt(字符串索引)返回(索引)处的char值。python中s.isalnum()判断s中所有字符都是字母数字。原创 2022-09-06 11:25:28 · 119 阅读 · 0 评论 -
【力扣】【初级算法】【字符串2】整数翻转
整数反转原创 2022-08-23 12:04:22 · 1012 阅读 · 0 评论 -
【力扣】【初级算法】【字符串1】反转字符串
反转字符串原创 2022-08-23 09:31:28 · 58 阅读 · 0 评论 -
【力扣】【初级算法】【数组11】旋转图像
旋转数组原创 2022-08-22 17:42:53 · 1084 阅读 · 0 评论 -
【力扣】【初级算法】【数组10】有效的数独
有效的数独原创 2022-08-22 17:17:13 · 88 阅读 · 0 评论 -
【力扣】【初级算法】【数组9】两数之和
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。输入:nums = [2,7,11,15], target = 9。输入:nums = [3,2,4], target = 6。你可以按任意顺序返回答案。原创 2022-08-21 17:39:04 · 58 阅读 · 0 评论 -
【力扣】【数组8】移动零
把数组中所有0元素移动到数组末尾原创 2022-08-21 16:37:27 · 54 阅读 · 0 评论 -
【力扣】【初级算法】【数组7】加一
加一原创 2022-08-20 10:08:51 · 57 阅读 · 0 评论 -
【力扣】【初级算法】【数组6】两个数组的交集
两个数组的交集Ⅱ原创 2022-08-19 14:15:25 · 59 阅读 · 0 评论 -
【力扣】【初级算法】【数组5】只出现一次的数字
只出现一次的数字原创 2022-08-18 11:06:42 · 56 阅读 · 0 评论 -
【力扣】【初级算法】【数组4】存在重复元素
存在重复元素原创 2022-08-17 09:50:39 · 180 阅读 · 0 评论 -
【力扣】【初级算法】【数组3】旋转数组
旋转数组原创 2022-08-16 11:08:05 · 94 阅读 · 0 评论