Day 36 912. 排序数组 912. 排序数组题目123456789101112131415161718给你一个整数数组 nums,请你将该数组升序排列。 示例 1:输入:nums = [5,2,3,1]输出:[1,2,3,5]示例 2:输入:nums = [5,1,1,2,0,0]输出:[0,0,1,1,2,5] 提示:1 <= nums.length <= 50000-50000 <= nums[i] 2021-10-15 91-day-algorithm #sort
Centos8.2 中 Git 安装 一、安装依赖包12系统为 centos8.2 版本,可能会出现系统版本不兼容等问题!sudo yum -y install make autoconf automake cmake perl-CPAN libcurl-devel libtool gcc gcc-c++ glibc-headers zlib-devel git-lfs telnet ctags lrzsz jq expat-deve 2021-10-15 middleware #git
Day 35 1737. 满足三条件之一需改变的最少字符数 1737. 满足三条件之一需改变的最少字符数题目123456789101112131415161718192021222324252627282930313233给你两个字符串 a 和 b ,二者均由小写字母组成。一步操作中,你可以将 a 或 b 中的 任一字符 改变为 任一小写字母 。操作的最终目标是满足下列三个条件 之一 :a 中的 每个字母 在字母表中 严格小于 b 中的 每个字母 。b 中 2021-10-14 91-day-algorithm #prefix
Day 34 1904. 你完成的完整对局数 1904. 你完成的完整对局数题目1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465一款新的在线电子游戏在近期发布,在该电子游戏中,以刻钟为周期规划若干时长为 15 分钟的游戏对局。这意味着,在 HH:00、 2021-10-13 91-day-algorithm #imitate
Day 33 1834. 单线程 CPU 1834. 单线程 CPU题目123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354给你一个二维数组 tasks ,用于表示 n 项从 0 到 n - 1 编号的任务。其中 tasks[i] = [enqueueTimei, processingTimei 2021-10-12 91-day-algorithm #priority_queue
Day 32 657. 机器人能否返回原点 657. 机器人能否返回原点题目12345678910111213141516171819202122232425262728293031在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束。移动顺序由字符串表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有 R(右),L(左),U(上)和 D(下)。如果机 2021-10-11 91-day-algorithm #vector
Day 31 1203. 项目管理 1203. 项目管理题目1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950有 n 个项目,每个项目或者不属于任何小组,或者属于 m 个小组之一。group[i] 表示第 i 个项目所属的小组,如果第 i 个项目不属于任何小组,则 group[i] 等于 -1。项目和小 2021-10-10 91-day-algorithm #graph
Day 30 886. 可能的二分法 886. 可能的二分法题目123456789101112131415161718192021222324252627282930313233给定一组 N 人(编号为 1, 2, ..., N), 我们想把每个人分进任意大小的两组。每个人都可能不喜欢其他人,那么他们不应该属于同一组。形式上,如果 dislikes[i] = [a, b],表示不允许将编号为 a 和 b 的人归入同一组。当可以用这种方 2021-10-09 91-day-algorithm #graph
16. 最接近的三数之和 16. 最接近的三数之和题目1234567891011121314151617181920212223242526给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在恰好一个解。 示例 1:输入:nums = [-1,2,1,-4], target = 1输出:2解释:与 2021-10-08 Leetcode #array
187. 重复的DNA序列 187. 重复的 DNA 序列题目1234567891011121314151617181920所有 DNA 都由一系列缩写为 'A','C','G' 和 'T' 的核苷酸组成,例如:"ACGAATTCCG"。在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助。编写一个函数来找出所 2021-10-08 Leetcode
Day 29 997. 找到小镇的法官 997. 找到小镇的法官题目12345678910111213141516171819202122232425262728293031323334353637383940414243在一个小镇里,按从 1 到 n 为 n 个人进行编号。传言称,这些人中有一个是小镇上的秘密法官。如果小镇的法官真的存在,那么:小镇的法官不相信任何人。每个人(除了小镇法官外)都信任小镇的法官。只有一个人同时满足条件 1 2021-10-08 91-day-algorithm #graph
434. 字符串中的单词数 434. 字符串中的单词数题目123456789统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。请注意,你可以假定字符串里不包括任何不可打印的字符。示例:输入: "Hello, my name is John"输出: 5解释: 这里的单词是指连续的不是空格的字符,所以 "Hello," 算作 1 个单词。 题目思路 1\简单题目,字符前不是 2021-10-07 Leetcode #string
Day 28 239. 滑动窗口最大值 239. 滑动窗口最大值题目1234567891011121314151617181920212223242526272829303132333435363738394041424344给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。 示例 1:输入:nums = 2021-10-07 91-day-algorithm #sliding window
GCC 与 GDB 的学习 gcc 是 GUN Compiler Collection的缩写,可以支持多种语言编译,比如 C, C++, Java, pascal 等 gcc的编译过程 预处理(pre-processing)E:插入头文件,替换宏 编译(Compiling)S:编译成汇编 汇编(Assembling) c:编译成目标文件 链接 (Linking):链接到库中,变成可执行文件 gcc -E he 2021-10-06 middleware #gcc
414. 第三大的数 414. 第三大的数题目1234567891011121314151617181920212223242526272829给你一个非空数组,返回此数组中 第三大的数 。如果不存在,则返回数组中最大的数。 示例 1:输入:[3, 2, 1]输出:1解释:第三大的数是 1 。示例 2:输入:[1, 2]输出:2解释:第三大的数不存在, 所以返回最大的数 2 。示例 3:输入:[2, 2, 3, 1]输 2021-10-06 Leetcode #set
Day 27 35. 搜索插入位置 35. 搜索插入位置题目123456789101112131415161718192021222324252627282930313233343536给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。 示例 1:输入: nums = [1,3,5,6], target = 5输出 2021-10-06 91-day-algorithm #binary search
284. 顶端迭代器 284. 顶端迭代器题目123456789101112131415161718192021222324252627282930313233请你设计一个迭代器,除了支持 hasNext 和 next 操作外,还支持 peek 操作。实现 PeekingIterator 类:PeekingIterator(int[] nums) 使用指定整数数组 nums 初始化迭代器。int next() 返回数组 2021-10-05 Leetcode #design
Day 26 26. 删除有序数组中的重复项 26. 删除有序数组中的重复项题目123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051给你一个有序数组 nums ,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额 2021-10-05 91-day-algorithm #vector
482. 密钥格式化 482. 密钥格式化题目1234567891011121314151617181920212223242526有一个密钥字符串 S ,只包含字母,数字以及 '-'(破折号)。其中, N 个 '-' 将字符串分成了 N+1 组。给你一个数字 K,请你重新格式化字符串,使每个分组恰好包含 K 个字符。特别地,第一个分组包含的字符个数必须小于等于 K,但至少要包含 2021-10-04 Leetcode #string
Day 25 876. 链表的中间结点 876. 链表的中间结点题目123456789101112131415161718192021给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例 1:输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式:[3,4,5])返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。注意,我们返回了一个 ListNo 2021-10-04 91-day-algorithm #Linklist