02 2023 档案
摘要:力扣344.反转字符串 力扣541. 反转字符串II 力扣05. 替换空格 很多数组填充类的问题,都可以先预先给数组扩容带填充后的大小,然后在从后向前进行操作。 这么做有两个好处: 不用申请新数组。 从后向前填充元素,避免了从前向后填充元素时,每次添加元素都要将添加元素之后的所有元素向后移动的问题。
阅读全文
摘要:哈希结构:数组、set(集合)、map(映射) 哈希法:当我们需要查询一个元素是否出现过,或者一个元素是否在集合里的时候,就要第一时间想到哈希法。 ① 当我们要使用set(集合)来解决哈希问题的时候: 1)优先使用unordered_set,因为它的查询和增删效率是最优的(底层哈希表,无序,不可重复
阅读全文
摘要:力扣203. 移除链表元素 力扣707. 设计链表 已经覆盖了链表的常见操作,是练习链表操作非常好的一道题目; 力扣206. 反转链表 再定义一个新的链表,实现链表元素的反转,是对内存空间的浪费。 1、只需要使用双指针,改变链表的next指针的指向,直接将链表反转 ,而不用重新定义一个新的链表。 2
阅读全文
摘要:力扣704. 二分查找 1.首先考虑边界问题,是左开右闭还是左闭右开; 2.在不同情况下,判断循环结束的条件,可以将左右边界带入区间是否合法来判断; 3.闭区间包含中间值,在确定下一区间时,要去掉已经判断过的这个值,开区间则不需要。 力扣27. 移除元素 双指针可以很好的解决这类问题,时间复杂度一般
阅读全文