ICode9

精准搜索请尝试: 精确搜索
  • LeetCode 226 翻转二叉树2022-09-07 09:05:11

    /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} *

  • LeetCode 101 对称二叉树2022-09-07 09:00:09

    /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} *

  • leetcode 45 跳跃游戏 最少次数 C/C++ 动态规划2022-09-06 19:32:43

    动态转移方程   dp[pos] = min{dp[pos-k] +1}   当a[pos-k] >= k ,  k 是两次状态之间a的物理距离。    动态规划并不是这个例子的最好解法,时间复杂度 n^2, 空间复杂度有n, 在 n 比较大时,在有些平台并不能通过。 class Solution { public:     int jump(vector<int>

  • leetcode 687 最长同值路径2022-09-06 16:00:45

    给定一个二叉树的 root ,返回 最长的路径的长度 ,这个路径中的 每个节点具有相同值。 这条路径可以经过也可以不经过根节点。 做这道题的时候,我一开始想到的是直接从根节点往下遍历,然后用哈希表记录相同节点出现的次数,然后取出出现次数最多的元素 代码类似这样 public void long

  • LeetCode 问题之禅:第 92 天——数字和字符串2022-09-06 08:33:55

    LeetCode 问题之禅:第 92 天——数字和字符串 欢迎回到 LeetCode 日常练习系列 . 今天我做了 2 简单 问题。让我们开始! Photo by 迈克豪普特 on 不飞溅 将整数转换为两个非零整数之和 [ 将整数转换为两个非零整数之和 - LeetCode 非零整数是在十进制表示中不包含任何 0 的正整数

  • LeetCode 383 赎金信2022-09-05 18:32:00

    class Solution { public: bool canConstruct(string ransomNote, string magazine) { int record[26] ={0}; //默认值为0 if (magazine.size() < ransomNote.size()) return false; for(int i = 0; i < magazine.size(); i ++) {

  • LeetCode 202 快乐数2022-09-05 17:35:22

    class Solution { public: int getSum(int n) { int sum = 0; while (n) { sum += (n % 10) * (n % 10); n /= 10; } return sum; } bool isHappy(int n) { unordered_set<int> set;

  • LeetCode 1002. 查找常用字符2022-09-05 17:32:44

    代码随想录链接: https://gitee.com/programmercarl/leetcode-master/blob/master/problems/1002.查找常用字符.md 思路: 第一步统计每个字符串的字符出现频数并存hash,最后统计每个字符(以第一个串的字符为准即可)出现频数的最小值(为0则表示非共有字符)作为res的字符重复数输出即可 我

  • LeetCode 491 递增子序列2022-09-05 11:05:26

    class Solution { public: vector<vector<int>> res; vector<int> path; int num = -101; void dfs(int start, vector<int>& nums) { if (path.size() > 1) { res.push_back(path); }

  • LeetCode — 133. 克隆图2022-09-05 03:03:40

    LeetCode — 133. 克隆图 这是 LeetCode 的解决方案—— 133. 克隆图 . 对于这个问题,我们使用 DFS。通过记录访问过的节点(值是克隆值) 地图 ,并在每次递归时查询它是否被访问(克隆)。 所以整体代码是: 公认: 谢谢阅读! 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上

  • 【Clion】使用LeetCode插件刷题登录失败解决2022-09-04 22:32:28

    因为8版本之后的LeetCode Editor都只支持2020之后的Clion,好在作者又更新了一个早期的LeetCode Editor https://github.com/shuzijun/leetcode-editor/releases/tag/v6.11 下载好之后导入本地插件即可,选择刚刚下载的路径 导入好之后就可以直接登录了

  • LeetCode 93 复原 IP 地址2022-09-04 16:00:25

    class Solution { public: vector<string> res; int pointNum; bool isValid(string s, int begin, int end) { if (begin > end) return false; //防止在最后末尾插入. if (s[begin] == '0' && begin != end) return false;

  • LeetCode - 路径和2022-09-04 12:03:33

    LeetCode - 路径和 问题陈述 鉴于 根 二叉树和整数 目标总和 , 返回 真的 如果树有一个 从根到叶 路径,使得沿路径的所有值相加等于 目标总和 . 一个 叶子 是一个没有子节点的节点。 问题陈述取自: https://leetcode.com/problems/path-sum 示例 1: Source: LeetCode 输入:root = [5,

  • Leetcode — 34. 查找有序数组中元素的第一个和最后一个位置2022-09-04 10:03:19

    Leetcode — 34. 查找有序数组中元素的第一个和最后一个位置 题目: 查找排序数组中元素的第一个和最后一个位置 难度:medium 语言:Python 中文题意:给一串以递增排序的整数list,找到和target这个值一样的所有数值,并回传第一次和最后一次出现的位置;如果没有和target一样的值,即回传[-

  • LeetCode 40 组合总和 II2022-09-04 09:31:07

    class Solution { public: vector<vector<int>> res; vector<int> path; int sum; void dfs(int start, vector<int>& candidates, int target) { if (sum > target) return; if (sum == target) {

  • LeetCode 19 组合总和2022-09-04 09:00:45

    class Solution { public: vector<vector<int>> res; vector<int> path; int sum = 0; void dfs(int start, vector<int>& candidates, int target) { if (sum > target) return; if (sum == target) {

  • LeetCode/摆动序列2022-09-03 18:31:11

    求数组最长摆动子序列长度 1. 动态规划 分两种状态进行转移 up[i]表示数组前i个数的最长上升摆动序列长度 down[i]表示数组前i个数的最长下降摆动序列长度 注意比较条件,以及导致状态转移的原因 class Solution { public: int wiggleMaxLength(vector<int>& nums) { in

  • leetcode-解决字母异位词2022-09-03 18:00:09

    引言 本篇文章分别对leetcode题目的242、49和438的题目进行解答。 有效的字母异位词 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。 示例 1: 输入: s = "anagram", t = "nagaram

  • LeetCode/递增的三元子序列2022-09-03 02:00:33

    给你一个整数数组nums ,判断这个数组中是否存在长度为 3 的递增子序列 1. 贪心法 贪心更新两个最左端端点 class Solution { public: bool increasingTriplet(vector<int>& nums) { int len = nums.size(); if (len < 3) return false; int small = INT_MAX, mid = I

  • [Leetcode 189]轮转数组2022-09-03 00:33:46

    Leetocde189 轮转数组 这题能被用做mid题是因为一题多解,其中基于双指针的轮状数组解法是比较难的 1. 使用新数组 __直接把第i个元素移到第(i+k)%numsize位置,类似循环队列 void rotate(int* nums, int numsSize, int k) { int newArr[numsSize]; for (int i = 0; i < numsSiz

  • leetcode 409 Longest Palindrome 最长回文串(简单)2022-08-31 13:30:49

    一、题目大意 给定一个包含大写字母和小写字母的字符串 s ,返回 通过这些字母构造成的 最长的回文串 。 在构造过程中,请注意 区分大小写 。比如 "Aa" 不能当做一个回文字符串。 示例 1: 输入:s = "abccccdd" 输出:7 解释: 我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。

  • LeetCode 18:2 sum 方法在计算 4 sum 中的应用(基于 2 指针的二进制搜索)2022-08-31 03:35:27

    LeetCode 18:2 sum 方法在计算 4 sum 中的应用(基于 2 指针的二进制搜索) 我们得到一个输入数组,我们有一个目标。我们要找出数组表单中哪两个元素的值等于目标。 例子: 数字= [1,2,3,4,5,6,7] 目标 = 10 输出:[[3,7],[4,6]] 约束: 约束是应该对 nums 进行排序以应用两个总和。 方法 与二

  • leetcode-998. 最大二叉树 II2022-08-30 19:00:08

    998. 最大二叉树 II 图床:blogimg/刷题记录/leetcode/998/ 刷题代码汇总:https://www.cnblogs.com/geaming/p/16428234.html 题目 思路 看到树就要想到递归。 解法 /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; *

  • leetcode 每日一题 1470. 重新排列数组2022-08-29 17:00:20

    leetcode  每日一题 1470. 重新排列数组 class Solution { public int[] shuffle(int[] nums, int n) { int[] arr = new int[nums.length]; for (int i = 0; i < nums.length; i++) { if(i < n){ arr[i*2] = nums[i];

  • LeetCode 21. 合并两个有序链表2022-08-29 10:33:41

    题目 题目链接:https://leetcode.cn/problems/merge-two-sorted-lists/ 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4] 示例 2: 输入:l1 = [], l2 = [] 输出:[] 示例 3:

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有