07 2022 档案
摘要:206.反转链表 给你单链表的头结点head,请你反转链表,并返回反转后的链表 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 1 ——> 2 输入:head = [1,2] 2 ——> 1 输出:[2,1] 提示: 链表中节点的数目范围是[0,5000] -5000 <=
阅读全文
摘要:全排列算法 从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。 当m=n时所有的排列情况叫全排列。 公式:全排列数f(n)=n!(定义0!=1) #include <iostream> #define MAXSIZE 100 using na
阅读全文
摘要:归并排序 归并排序(Merge sort) 是建立在归并操作上的一种有效的排列算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 作为一种典型的分而治之思想的算法应用,归并排序的实现由两种方法: 自上而下的递归(所有递归的方法都可以用迭代重写,所以就有了第 2 种
阅读全文
摘要:203. 移除链表元素 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 示例 1: 输入:head = [1,2,6,3,4,5,6], val = 6 输出:[1,2,3,4,5] 示例 2: 输入:he
阅读全文
摘要:509.斐波那契数 斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) = 0,F(1) = 1 F(n) = F(n - 1) + F(n - 2),其中 n > 1 给定 n ,请计算 F(n
阅读全文
摘要:739. 每日温度 给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指在第 i 天之后,才会有更高的温度。如果气温在这之后都不会升高,请在该位置用 0 来代替。 示例 1: 输入: temperatures = [73,74,7
阅读全文
摘要:234.回文链表 给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。 1 -> 2 -> 2 -> 1 输入:head = [1,2,2,1] 输出:true 1 -> 2 输入:head = [1,2] 输出:false 链表中节
阅读全文
摘要:343.整数拆分 给定一个正整数 n ,将其拆分为 k 个 正整数 的和( k >= 2 ),并使这些整数的乘积最大化。 返回 你可以获得的最大乘积 。 示例 1: 输入: n = 2 输出: 1 解释: 2 = 1 + 1, 1 × 1 = 1。 示例 2: 输入: n = 10 输出: 36 解
阅读全文
摘要:455.分发饼干 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] >= g[i],我们可以将这个饼干 j 分配给孩子
阅读全文
摘要:148. 排序链表 给你链表的头结点head,请将其按升序排列并返回排序后的列表 示例1: 4 --> 2 --> 1 --> 3 1 --> 2 --> 3 --> 4 输入:head = [4,2,1,3] 输出:[1,2,3,4] 提示: 链表中节点的数目在范围 [0, 5 * 10^4] 内
阅读全文
摘要:141.环形链表 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅
阅读全文
摘要:209.长度最小的子数组 题目: 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl+1, ..., numsr-1, numsr] ,并返回其长度**。**如果不存在符合条件的子数组,返回 0
阅读全文
摘要:20.有效括号 给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 示例1 : 输入:s = "()" 输出:true 示例2: 输入:s = "(){}[]" 输
阅读全文
摘要:62. 不同路径 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径? 示例 1: 输入:m = 3, n = 7 输出:28 示
阅读全文
摘要:63. 不同路径 || 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish”)。 现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径? 网格中的障碍
阅读全文
摘要:GIT 基础使用教程 1.1 GIT 是什么 Git 是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是[Linus Torvalds]为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。 1.2 GIT 的安装与配置 1.2.1 GIT的安装
阅读全文