2022年1月12日

剑指 Offer 53 - I. 在排序数组中查找数字 I

摘要: 统计一个数字在排序数组中出现的次数。 示例 1: 输入: nums = [5,7,7,8,8,10], target = 8 输出: 2 二分,之后查找 class Solution { public: int search(vector<int>& nums, int target) { int 阅读全文

posted @ 2022-01-12 17:09 4小旧 阅读(39) 评论(0) 推荐(0)

剑指 Offer 03. 数组中重复的数字

摘要: 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输入:[2, 3, 1, 0, 2, 5, 3] 输出:2 或 3 限制:2 <= n <= 100 阅读全文

posted @ 2022-01-12 16:06 4小旧 阅读(22) 评论(0) 推荐(0)

19. 删除链表的倒数第 N 个结点

摘要: 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 使用双指针,时间复杂度O(n),空间复杂度O(1) class Solution { public: ListNode* removeNthFromEnd(ListNode* head, int n) { ListNode* sta 阅读全文

posted @ 2022-01-12 11:08 4小旧 阅读(28) 评论(0) 推荐(0)

876. 链表的中间结点

摘要: 给定一个头结点为 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4,5]) 时间复杂度为O(n),空间复杂度为O(1) class Solution { public: 阅读全文

posted @ 2022-01-12 10:31 4小旧 阅读(28) 评论(0) 推荐(0)

242. 有效的字母异位词

摘要: 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。 示例 1: 输入: s = "anagram", t = "nagaram" 输出: true 示例 2: 输入: s = "rat 阅读全文

posted @ 2022-01-12 09:57 4小旧 阅读(33) 评论(0) 推荐(0)

383. 赎金信

摘要: 给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。如果可以,返回 true ;否则返回 false 。magazine 中的每个字符只能在 ransomNote 中使用一次。 示例 1: 输入:ransomNote 阅读全文

posted @ 2022-01-12 09:47 4小旧 阅读(40) 评论(0) 推荐(0)

387. 字符串中的第一个唯一字符

摘要: 给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。 示例: s = "leetcode" 返回 0 s = "loveleetcode" 返回 2 思路: 我想到的是两次hash,用string来做索引,如果两个字符相同,第二个会把第一个覆盖,比如lol,在map 阅读全文

posted @ 2022-01-12 09:36 4小旧 阅读(36) 评论(0) 推荐(0)

导航