随笔分类 -  Algorithm-1.3-Leetcode

算法题
摘要:Alice 和 Bob 共有一个无向图,其中包含 n 个节点和 3 种类型的边: 类型 1:只能由 Alice 遍历。 类型 2:只能由 Bob 遍历。 类型 3:Alice 和 Bob 都可以遍历。 给你一个数组 edges ,其中 edges[i] = [typei, ui, vi] 表示节点 阅读全文
posted @ 2021-01-27 08:47 He_LiangLiang 阅读(119) 评论(0) 推荐(0) 编辑
摘要:1319. 连通网络的操作次数 用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1。线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a 和 b。 网络中的任何一台计算机都可以通过网络直接或者间接访问同一个网络中其他任意 阅读全文
posted @ 2021-01-23 11:48 He_LiangLiang 阅读(114) 评论(0) 推荐(0) 编辑
摘要:1202. 交换字符串中的元素 给你一个字符串 s,以及该字符串中的一些「索引对」数组 pairs,其中 pairs[i] = [a, b] 表示字符串中的两个索引(编号从 0 开始)。 你可以 任意多次交换 在 pairs 中任意一对索引处的字符。 返回在经过若干次交换后,s 可以变成的按字典序最 阅读全文
posted @ 2021-01-22 09:05 He_LiangLiang 阅读(94) 评论(0) 推荐(0) 编辑
摘要:官方题解:https://leetcode-cn.com/problems/number-of-provinces/solution/sheng-fen-shu-liang-by-leetcode-solution-eyk0/ 547. 省份数量 有 n 个城市,其中一些彼此相连,另一些没有相连。如 阅读全文
posted @ 2021-01-20 09:04 He_LiangLiang 阅读(144) 评论(0) 推荐(0) 编辑
摘要:学习并查集,这是第1篇,后续会继续补上若干文章。 先看代码: #include <iostream> #include <vector> using namespace std; class UnionFind { private: int count; //连通分量个数 vector<int> p 阅读全文
posted @ 2021-01-19 09:15 He_LiangLiang 阅读(66) 评论(0) 推荐(0) 编辑
摘要:1143. 最长公共子序列 给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列的长度。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。 例如,"ace" 是 "abcde" 的 阅读全文
posted @ 2020-12-31 09:05 He_LiangLiang 阅读(185) 评论(0) 推荐(0) 编辑
摘要:300. 最长递增子序列 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。 示例 1: 输入:nums = [10,9,2, 阅读全文
posted @ 2020-12-28 08:58 He_LiangLiang 阅读(151) 评论(0) 推荐(0) 编辑
摘要:309. 最佳买卖股票时机含冷冻期 给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。​ 设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票): 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 卖出股票后,你无法在第二天买 阅读全文
posted @ 2020-12-22 09:06 He_LiangLiang 阅读(85) 评论(0) 推荐(0) 编辑
摘要:121. 买卖股票的最佳时机 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。 注意:你不能在买入股票前卖出股票。 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 阅读全文
posted @ 2020-12-22 08:47 He_LiangLiang 阅读(102) 评论(0) 推荐(0) 编辑
摘要:题目地址: https://leetcode-cn.com/problems/coin-change/ 322. 零钱兑换 给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。 你可以认为 阅读全文
posted @ 2020-12-22 08:24 He_LiangLiang 阅读(124) 评论(0) 推荐(0) 编辑