自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

GGGGITFKBJG的主页

不爱学习的人,没对象。——鲁迅

  • 博客(384)
  • 资源 (3)
  • 收藏
  • 关注

原创 conda环境配置、pip安装位置问题与解决

0. 安装与设置:pip、conda国内镜像源问题1:在conda虚拟环境里使用pip, 并没有安装在虚拟环境目录下, 而是安装到了全局目录下;问题2: Pycharm创建不了conda环境, 点击没反应, 日志里报错`CondaPythonLegacy - Can't find python path to use, will use conda run instead`;问题3: 多个环境使用相同版本的python, conda默认用了硬链接, `site.py`文件改动后影响多个虚拟环境。

2023-12-04 20:25:12 2076

原创 32. Longest Valid Parentheses

32. 最长有效括号给定一个只包含 '('和 ')'的字符串,找出最长的包含有效括号的子串的长度。示例1:输入: "(()"输出: 2解释: 最长有效括号子串为 "()"示例 2:输入: ")()())"输出: 4解释: 最长有效括号子串为 "()()"class S...

2020-07-05 12:53:30 65

原创 662. Maximum Width of Binary Tree

662. 二叉树最大宽度给定一个二叉树,编写一个函数来获取这个树的最大宽度。树的宽度是所有层中的最大宽度。这个二叉树与满二叉树(full binary tree)结构相同,但一些节点为空。每一层的宽度被定义为两个端点(该层最左和最右的非空节点,两端点间的null节点也计入长度)之间的长度。示例 1:输入: 1 / \ 3 ...

2020-07-05 12:53:30 117

原创 297. Serialize and Deserialize Binary Tree

297. 二叉树的序列化与反序列化序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。请设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。示例:...

2020-07-05 12:53:30 80

原创 394. Decode String

394. 字符串解码给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如不会出现像...

2020-07-05 12:53:30 99

原创 695. Max Area of Island

695. 岛屿的最大面积给定一个包含了一些 0 和 1 的非空二维数组grid 。一个岛屿是由一些相邻的1(代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平或者竖直方向上相邻。你可以假设grid 的四个边缘都被 0(代表水)包围着。找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为 0 。)示例 1:[[0,0,1,0,0,0,0,1,0,0...

2020-07-05 12:53:30 155

原创 328. Odd Even Linked List

328. 奇偶链表给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。示例 1:输入: 1->2->3->4->5->NULL输出: 1->3-&gt...

2020-07-05 12:53:30 239

原创 560. Subarray Sum Equals K

560. 和为K的子数组给定一个整数数组和一个整数k,你需要找到该数组中和为k的连续的子数组的个数。示例 1 :输入:nums = [1,1,1], k = 2输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。说明 : 数组的长度为 [1, 20,000]。 数组中元素的范围是 [-1000, 1000] ,且整数k的范围是[-1e7, 1e7]。...

2020-07-05 12:53:30 211

原创 1143. Longest Common Subsequence

1143. 最长公共子序列给定两个字符串text1 和text2,返回这两个字符串的最长公共子序列的长度。一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的> 相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace" 是 "abcde" 的子序列,但 "aec" 不是 "...

2020-07-04 16:29:34 93

原创 128. Longest Consecutive Sequence

128. 最长连续序列给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为O(n)。示例:输入:[100, 4, 200, 1, 3, 2]输出: 4解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。// 最坏需要遍历三遍数组, O(n)class Solution {public: int longestConsecutiv...

2020-07-04 16:29:34 58

原创 221. Maximal Square

221. 最大正方形在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积。示例:输入:1 0 1 0 01 0 1 1 11 1 1 1 11 0 0 1 0输出: 4class Solution {public: Solution() : maxArea(0) {} // 检查以(x1,y1)为左上角的正方形的最大面积....

2020-07-04 16:29:34 73

原创 518. Coin Change 2

518. 零钱兑换 II给定不同面额的硬币和一个总金额。写出函数来计算可以凑成总金额的硬币组合数。假设每一种面额的硬币有无限个。示例 1:输入: amount = 5, coins = [1, 2, 5]输出: 4解释: 有四种方式可以凑成总金额:5=55=2+2+15=2+1+1+15=1+1+1+1+1示例 2:输入: amount = 3, coins =...

2020-07-04 16:29:34 66

原创 23. Merge k Sorted Lists

23. 合并K个排序链表合并k个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[ 1->4->5, 1->3->4, 2->6]输出: 1->1->2->3->4->4->5->6/** * Definition for singly-linked list. *...

2020-07-04 16:29:34 63

原创 230. Kth Smallest Element in a BST

230. 二叉搜索树中第K小的元素给定一个二叉搜索树,编写一个函数kthSmallest来查找其中第k个最小的元素。说明:你可以假设 k 总是有效的,1 ≤ k ≤ 二叉搜索树元素个数。示例 1:输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2输出: 1示例 2:输入: root = [5,3,6,2,...

2020-07-04 16:29:34 74

原创 146. LRU Cache

146. LRU缓存机制运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。获取数据 get(key) - 如果密钥 (key) 存在于缓存中,则获取密钥的值(总是正数),否则返回 -1。写入数据 put(key, value) - 如果密钥不存在,则写入其数据值。当缓存容量达到上限时,它应该在写入新...

2020-07-04 03:38:02 110

原创 33. Search in Rotated Sorted Array

33. 搜索旋转排序数组假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2])。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回-1。你可以假设数组中不存在重复的元素。你的算法时间复杂度必须是O(logn) 级别。示例 1:输入: nums = [4,5,6,...

2020-07-04 03:38:02 137

原创 51. N-Queens

51. N皇后n皇后问题研究的是如何将 n个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。上图为 8 皇后问题的一种解法。给定一个整数 n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个明确的n 皇后问题的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。示例:输入: 4输出: [ ["....

2020-07-04 03:38:02 63

原创 215. Kth Largest Element in an Array

215. 数组中的第K个最大元素在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例 1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4说明: 你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。...

2020-07-04 03:38:02 128

原创 322. Coin Change

322. Coin Change给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回-1。示例1:输入: coins = [1, 2, 5], amount = 11输出: 3解释: 11 = 5 + 5 + 1示例 2:输入: coins = [2], amount =...

2020-07-04 03:38:02 76

原创 42. Trapping Rain Water

42. 接雨水给定n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。感谢 Marcos 贡献此图。示例:输入: [0,1,0,2,1,0,1,3,2,1,2,1]输出: 6解法一:// 超时。...

2020-07-04 03:38:02 63

原创 15. 3Sum

15. 三数之和给定一个包含 n 个整数的数组nums,判断nums中是否存在三个元素 a,b,c ,使得a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]]解...

2020-07-03 04:08:16 86

原创 25. Reverse Nodes in k-Group

25. K 个一组翻转链表给你一个链表,每k个节点一组进行翻转,请你返回翻转后的链表。k是一个正整数,它的值小于或等于链表的长度。如果节点总数不是k的整数倍,那么请将最后剩余的节点保持原有顺序。示例:给你这个链表:1->2->3->4->5当k= 2 时,应当返回: 2->1->4->3->5当k= 3 时,应当...

2020-07-03 04:08:16 127

原创 124. Binary Tree Maximum Path Sum

124. 二叉树中的最大路径和给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径> 至少包含一个节点,且不一定经过根节点。示例 1:输入: [1,2,3] 1 / \ 2 3输出: 6示例2:输入: [-10,9,20,null,null,15,7] -10 ...

2020-07-03 04:08:16 95

原创 236. Lowest Common Ancestor of a Binary Tree

236. Lowest Common Ancestor of a Binary Tree给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树: root =[3,5,1,6,2...

2020-07-03 04:08:16 91

原创 轻量级I/O事件驱动的高性能C++网络库wethands——muduo项目拆解及实现

轻量级I/O事件驱动的高性能C++网络库wethands——muduo项目拆解及实现一、背景去年夏天开始看了陈硕前辈的书,疫情在家期间零零碎碎花了近两个月时间终于把硕神的muduo库代码读完了。学习一项技能最高效的方法就是实践,出于学习前辈工程经验的目的,本人仿照muduo库实现一个简易版的高性能网络库。此帖记录了我的实现过程和一些思考。读源码的过程中我把学习过程的理解写到了代码注释中,便于反复回看时整理思路。这里是本人实现的muduo库简易版本 wethands,全部代码量5591行(muduo库

2020-06-20 00:08:05 1030

原创 WSL1 ubuntu 20.04 有关sleep系统调用不能正常工作的问题

遇到了一个很奇怪的问题,在WIN10的WSL(ubuntu 20.04)上,sleep、nanosleep系统调用总会立即返回,而且没有任何提示信息。同时shell命令的sleep也不能正常使用,会出现如下错误信息:$ sleep 1sleep: cannot read realtime clock: Invalid argument在另一台机子上测试确实不是代码的问题。后来在网上找到原因:Ubuntu 20.04 and WSL 1.Issue 4989An example of the

2020-06-01 15:45:38 3305

原创 google c++ 代码规范关键条目总结

GOOGLE C++代码规范总结:开始一个项目之前,首先应该明确编码规范。一个好的编码习惯可以让代码更易于阅读,同时也能让程序员避免犯一些常见的错误。为了便于快速参考,此帖仅仅提取了关键点,具体的详解请参考官方地址:英文:Google C++ Style Guide中文:C++ 风格指南Content一、头文件二、作用域三、类四、函数五、来自GOOGLE的技巧六、其他C++特...

2020-05-07 23:17:19 511

原创 C++ static_cast和implicit_cast

问题来源:此问题来源于muduo库代码的学习过程中,在muduo/base/Types.h文件中的第62行,如图:后续代码:这段话是说,使用implicit_cast作为static_cast和const_cast的安全版本。看到第112行,我有了一个疑惑:static_cast也会进行类型检查,为什么要自定义一个隐式转换,而不是直接使用static_cast呢?这段注释说impl...

2020-04-03 11:38:00 541 1

原创 208. Implement Trie (Prefix Tree)

208. 实现 Trie (前缀树)实现一个 Trie (前缀树),包含insert,search, 和startsWith这三个操作。示例:Trie trie = new Trie();trie.insert("apple");trie.search("apple"); // 返回 truetrie.search("app&#3...

2020-01-11 16:08:04 113

原创 210. Course Schedule II

210. 课程表 II现在你总共有 n 门课需要选,记为0到n-1。在选修某些课程之前需要一些先修课程。例如,想要学习课程 0 ,你需要先完成课程1 ,我们用一个匹配来表示他们: [0,1]给定课程总量以及它们的先决条件,返回你为了学完所有课程所安排的学习顺序。可能会有多个正确的顺序,你只要返回一种就可以了。如果不可能完成所有课程,返回一个空数组。示例1:输入: 2, [...

2020-01-11 03:25:07 122

原创 209. Minimum Size Subarray Sum

209. 长度最小的子数组给定一个含有n个正整数的数组和一个正整数s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组。如果不存在符合条件的连续子数组,返回 0。示例:输入: s = 7, nums = [2,3,1,2,4,3]输出: 2解释: 子数组[4,3]是该条件下的长度最小的连续子数组。进阶:如果你已经完成了O(n) 时间复杂度的解法, 请尝试O(n...

2020-01-10 16:13:11 168

原创 207. Course Schedule

207. 课程表现在你总共有 n 门课需要选,记为0到n-1。在选修某些课程之前需要一些先修课程。例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: [0,1]给定课程总量以及它们的先决条件,判断是否可能完成所有课程的学习?示例 1:输入: 2, [[1,0]] 输出: true解释:总共有 2 门课程。学习课程 1 之前,你需要完成课程 0。所...

2020-01-09 05:50:33 73

原创 201. Bitwise AND of Numbers Range

201. 数字范围按位与给定范围 [m, n],其中 0 <= m <= n <= 2147483647,返回此范围内所有数字的按位与(包含 m, n 两端点)。示例 1:输入: [5,7]输出: 4示例 2:输入: [0,1]输出: 0解法一://时间复杂度O(1), 空间复杂度O(1)class Solution {public: int...

2020-01-08 16:18:01 111

原创 200. Number of Islands

200. 岛屿数量给定一个由'1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。示例 1:输入:11110110101100000000输出:1示例2:输入:11000110000010000011输出: 3...

2020-01-07 15:17:10 73

原创 199. Binary Tree Right Side View

199. 二叉树的右视图给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。示例:输入:[1,2,3,null,5,null,4]输出:[1, 3, 4]解释: 1 <--- / \2 3 <--- \ \ 5 4 <---...

2020-01-06 05:09:38 70

原创 187. Repeated DNA Sequences

187. 重复的DNA序列所有 DNA 都由一系列缩写为 A,C,G 和 T 的核苷酸组成,例如:“ACGAATTCCG”。在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助。编写一个函数来查找 DNA 分子中所有出现超过一次的 10 个字母长的序列(子串)。示例:输入:s = "AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT"输...

2020-01-05 09:08:49 125

原创 179. Largest Number

179. 最大数给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数。示例 1:输入: [10,2]输出: 210示例2:输入: [3,30,34,5,9]输出: 9534330说明: 输出结果可能非常大,所以你需要返回一个字符串而不是整数。解法一://时间复杂度O(mnlogn), 空间复杂度O(m), m是单个字符串平均长度class Solution {...

2020-01-04 05:38:02 103

原创 173. Binary Search Tree Iterator

173. 二叉搜索树迭代器实现一个二叉搜索树迭代器。你将使用二叉搜索树的根节点初始化迭代器。调用 next() 将返回二叉搜索树中的下一个最小的数。示例:BSTIterator iterator = new BSTIterator(root);iterator.next(); // 返回 3iterator.next(); // 返回 7iterator.hasN...

2020-01-03 07:32:18 71

原创 166. Fraction to Recurring Decimal

166. 分数到小数给定两个整数,分别表示分数的分子numerator 和分母 denominator,以字符串形式返回小数。如果小数部分为循环小数,则将循环的部分括在括号内。示例 1:输入: numerator = 1, denominator = 2输出: "0.5"示例2:输入: numerator = 2, denominator = 1输出: &#...

2020-01-02 10:08:52 89

原创 165. Compare Version Numbers

165. 比较版本号比较两个版本号 version1和 version2。如果version1>version2返回1,如果version1<version2 返回 -1, 除此之外返回 0。你可以假设版本字符串非空,并且只包含数字和. 字符。. 字符不代表小数点,而是用于分隔数字序列。例如,2.5 不是“两个半”,也不是“差一半到三”,而是第二版中的...

2019-12-31 05:27:47 82

cpplint.py

google c++ 代码规范审查工具,实测python3可用 https://pypi.org/project/cpplint/

2020-06-02

jsoncpp_v1_8_4.rar

编译好的jsoncpp二进制库文件,版本1.8.4 适用于windows 64位平台 包括64和32位、及Debug和Release版共4个版本 目录树: |--x86 动态链接库文件 |--bin --|--x64 | jsoncpp-|--include 头文件 | |--lib--|--x64 导入库文件 |--x86

2019-07-13

常用ASCII对照表(0-127) PDF+EXCEL版

PDF+EXCEL版,常用ASCII码对照表(0-127) PDF版可以打印出来看, EXCEL文件可以编辑,修改成看着顺眼的格式、字体。

2019-04-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除