LeetCode
文章平均质量分 66
Leetcode刷题解题分享
adventure.Li
南京信息工程大学本科,南京大学研究生,后端Javaer,2022年阿里巴巴编程之夏学员,2023年拼多多暑期实习生,记录个人学习、感悟以及经验分享。
展开
-
【LeetCode】《不同路径》的解题思考过程
一、题目描述一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?二、解决办法从数学角度拿到此题,可能不少朋友会想起来高中学习组合数学时做过,本人也是第一反应直接进行组合数计算不是很快,基本上只需要0ms解决问题,但由于细节问题,分析失误导致结果不对,然后开始了其他思路。数学功底较差或者没敢去想的朋友也别慌,还可以进行原创 2021-06-03 13:28:58 · 121 阅读 · 2 评论 -
【LeetCode】数论题目总结
一、基本问题辗转相除的gcd应用,求最大公约数 ,进而lcm求最小公倍数质数问题余数问题、位运算、进制转换约数定理: 分解质因数.然后通过排列组合求因数个数,比如有n个质因数,每个质因数重复k1,k2…kn次,那么因数的个数=(k1+1)(k2+1)…(kn+1)二、相关代码基本模板代码 /** * @param a * @param b * @return * 最大公约数 * 1.根据其值判断是否互质 * 2. *原创 2021-06-01 17:26:26 · 343 阅读 · 1 评论 -
【leetcode】递归练习总结
一、总结二、题目递归通用模板(1)具有返回值型int型 代表题目:斐波那、跳台阶、阶乘集合型 代表题目:杨辉三角;Java注意记录时的加入引用与实例问题。bool型 代表题目:2的幂、4的幂。 /** * @param n 传入参数 * @param pos 当前递归位置 * @param val 计算参数,子集的异或问题参考 * @param flag 状态判断,N皇后问题 * @return */ T recurs原创 2021-06-01 17:11:28 · 401 阅读 · 7 评论 -
【初级算法】动态规划入门学习
一、前言在去年暑假的时候,一个朋友建议我开始每天三道LeetCode刷题。但是由于刚开始学习Java框架以及C和数据结构很久没有碰了,于是就一心学习spring去了,忽略了算法的重要性。最近春招以及考研复习数据结构,才发现算法的重要性。因此,开始了算法的学习。二、准备工作注:为便于梳理框架,我会进行在准备工作处进行该系列的整理,如果只想快速看本主题,请点击链接。基础语法知识C语言篇(1)基础类型使用,控制逻辑使用(2)STL库的基本使用(3)algorithm库的简单使用(结构体排序原创 2021-03-26 13:15:58 · 482 阅读 · 0 评论 -
【OJ基础练习大全】亲和数以及统计单词(c语言实现)
一、前言由于转专业原因,原先专业没有进行C基础训练,需要进行OJ补课,于是记录一下刷OJ的过程,以加深巩固。二、准备工作OJ是什么?Online Judge System 即 在线评测系统(以下简称OJ),用户可以在线的提交程序源代码,OJ会对这些源代码进行编译和运行,并且通过每道题目预先设计的数据和时空限制等标准来检验用户程序的正确性。一些常见测试模板#include "iostream"#include "string"using namespace std;//原创 2021-03-21 23:31:52 · 1296 阅读 · 4 评论 -
【LeetCode - 数组】旋转数组
一、题目二、思路1.分析题目,查找规律 从题目可知,我们很容易知道这样的一个规律:数组的尾部元素取出,然后全部后移放入头部。因此,不少人就会采用双循环,移动一次就全部移动一次,这样导致复杂度很大。2.如何来进行复杂度的降低 既然这是一个从尾到头依次移动,就很容易想到循环,可以拿循环队列来思考,那么就可以采用%来解决循环,就可以清晰地得原创 2020-12-18 23:37:27 · 426 阅读 · 2 评论