欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
  • 【力扣算法】【python】对角线遍历

    题目给定一个含有 M x N 个元素的矩阵(M 行,N 列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示。输入:[[ 1, 2, 3 ],[ 4, 5, 6 ],[ 7, 8, 9 ]]输出: [1,2,4,7,5,3,6,8,9]代码class Solution(object): def findDiagonalOrder(self, matrix): """ :type matrix: List[List[int]]

    程序员文章站2023-09-18
  • 关于力扣第一题 ---两数之和(多方法)

    题目描述: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 2.利用indexOf, Array 的 indexOf 方法实际上是对数 ...

    程序员文章站2023-01-21
  • 力扣-11.9-46

    回溯class Solution { public static void dfs(int[] nums, int len, int depth, List path, int[] used, List res) {if (depth == len) {res.add(new ArrayList(path));return;}// 在非叶子结点处.

    程序员文章站2022-12-20
  • 力扣刷题笔记:1052.爱生气的书店老板(普通滑窗题,巧妙利用grumpy[i]的0、1值作为flag计算满意顾客人数)

    题目:1052、爱生气的书店老板今天,书店老板有一家店打算试营业 customers.length 分钟。每分钟都有一些顾客(customers[i])会进入书店,所有这些顾客都会在那一分钟结束后离开。在某些时候,书店老板会生气。 如果书店老板在第 i 分钟生气,那么 grumpy[i] = 1,否...

    程序员文章站2022-11-23
  • 力扣题目汇总(机器人返回原点,按奇偶排序,数字的补数)

    力扣题目汇总(机器人返回原点,按奇偶排序,数字的补数 "机器人能否返回原点" 1.题目描述 在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束 。 移动顺序由字符串表示。字符 move[i] 表示其第 i 次移动。机器人的有 ...

    程序员文章站2022-11-05
  • 力扣题目解答自我总结(二)

    力扣题目解答自我总结(二) 一.回文数 1.题目描述 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 示例 2: 示例 3: 2.解答 二.宝石和石头 1.题目描述 给定字符串 代表石头中宝石的类型,和字符串 代表你拥有的石头。 中每个字符代表了 ...

    程序员文章站2022-10-06
  • 力扣题目解答自我总结(反转类题目)

    力扣题目解答自我总结(反转类题目)

    力扣题目解答自我总结(反转类题目) 一.反转字符串 1.题目描述 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 的形式给出。 不要给另外的数组分配额外的空间,你必须 原地修改输入数组 、使用 O(1) 的额外空间解决这一问题。 你可以假设数组中的所有字符都是 "ASCII" 码 ...

    程序员文章站2022-10-05
    IT编程
  • 力扣简单题合集(带答案)

    1.给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。**class Solution { public int[] twoSum(int[] nums, int target) { int n = nums.length; for (int i = 0; i < n; ++i) { fo

    程序员文章站2022-10-03
  • 力扣OJ 剑指 Offer 68 - II.  236. 二叉树的最近公共祖先

    力扣OJ 剑指 Offer 68 - II. 236. 二叉树的最近公共祖先

    给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 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,null,7,4], p = 5, q = 1输出: 3解释: 节点 5 ...

    程序员文章站2022-09-21
    IT编程
  • 算法源于生活,算法服务于生活---在力扣的成长(一)

    感悟来源:https://leetcode-cn.com/problems/3sum/solution/three-sum-ti-jie-by-wonderful611/ 做算法问题的时候,不要仅仅考虑代码方面,这样解题是枯燥乏味的,我们可以将算法问题放到生活中去,人们生活中的智慧远高于算法,可能生 ...

    程序员文章站2022-08-04
  • 【JAVA】判断二分图——力扣每日一题(四)(2020.07.16)

    【JAVA】判断二分图——力扣每日一题(四)(2020.07.16)

    目录题目:785. 判断二分图方法一:BFS或DFS,染色法方法1:DFS方法2:BFS方法二:并查集题目拓展如果你从本文中学习到丝毫知识,那么请您点点关注、点赞、评论和收藏大家好,我是爱做梦的鱼,我是东北大学大数据实验班大三的小菜鸡,非常渴望优秀,羡慕优秀的人,个人博客为:爱做梦的鱼https:/...

    程序员文章站2022-07-26
    IT编程
  • 【力扣日记】053 最大子序和

    【力扣日记】053 最大子序和

    题目描述给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。算法思路动态规划(Kadane 算法)在整个数组或在固定大...

    程序员文章站2022-07-16
  • 力扣课程表1-3 java实现

    力扣课程表1-3 java实现

    三道课程表题,前两道与拓扑排序相关,第三道题与优先队列的贪心算法有关。课程表Ⅰ思路拓扑排序的话可以考虑用广度优先搜索的方法,判断图是否有环。一门课有先修课程,说明这门课是有入度的,可以从这一点入手。构造邻接表来存储图,利用入度矩阵存储每个节点的入度,将入度为0的节点一次入队,然后遍历,减少其对应端点...

    程序员文章站2022-07-16
  • 力扣121. 买卖股票的最佳时机(动态规划)

    力扣121. 买卖股票的最佳时机(动态规划)

    力扣121. 买卖股票的最佳时机(动态规划)动态规划:有点像0-1背包问题:买入: i当天买入i当天不买入i当天买入的最大收益-i当天的股价i-1买入的最大收益,维持现状in[i]-prices[i]in[i-1]卖出: i当天卖出i当天不卖出i当天卖出的最大收益i-1天买入的最大收益+i当天的股价...

    程序员文章站2022-07-16
  • 力扣 44. 通配符匹配 dp

    力扣 44. 通配符匹配 dp

    https://leetcode-cn.com/problems/wildcard-matching/思路:dp[i][j]dp[i][j]dp[i][j]表示aaa的前iii个字符和bbb的前jjj个字符能否匹配。那么答案就是dp[n][m]dp[n][m]dp[n][m],现在考虑怎么转移,因为...

    程序员文章站2022-07-16
  • 背包-力扣-java

    背包-力扣-java

    class Solution { public boolean canPartition(int[] nums) { int sum=0; for(int num:nums) sum+=num; if(sum%2==1) retu...

    程序员文章站2022-07-16
  • 力扣打家劫舍1-3 java实现

    力扣打家劫舍1-3 java实现

    打家劫舍Ⅰ思路动态规划实现,只需要隔着偷就好。class Solution { public int rob(int[] nums) { int n = nums.length; // 处理边界条件。 if (n == 0) { ...

    程序员文章站2022-07-16
  • 动态规划: 力扣91. 解码方法

    动态规划: 力扣91. 解码方法

    1、题目描述2、题解:方法:动态规划:动态规划问题,弄清楚三点:1、重复子问题; 2、最优子结构; 3、无后效性。 动态规划:1、状态定义; 2、状态转移方程; 3、初始化;base case 4、输出; 5、思考状态压缩。 可以用递归去求,但是会存在重叠子问题,加个备忘录可以解决重复问题。状态定义...

    程序员文章站2022-07-15
  • 数据结构与算法 力扣83.删除排序链表的重复元素

    数据结构与算法 力扣83.删除排序链表的重复元素

    83.删除排序链表的重复元素给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3给定一个排序链表,删除所有重复的元素,使得...

    程序员文章站2022-07-15
  • (力扣)198. 打家劫舍

    (力扣)198. 打家劫舍

    题目解题结果解题思路:动态规划题中提到“最高金额”,即求最优解代价。贪心策略和动态规划都可用于求解最优解问题。此问题是动态规划问题。定义最优解代价,题目已给出:“盗取金额总数”,dp[i]表示前i个房屋可获取的金额。定义最优解结构如果dp[i-1]不包括最末尾房屋,则直接加上第i个房屋的金额(num...

    程序员文章站2022-07-15