随笔分类 -  leetcode刷题

摘要:题目:给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。https://leetcode-cn.com/problems/er-cha-shu-de-zui-jin-gong-gong-zu-xian-lcof/submissions/ 写在前面:这一题不同于68-I 二叉搜索树的最近公共祖先 阅读全文
posted @ 2020-03-22 18:45 USTC丶ZCC 阅读(195) 评论(0) 推荐(0)
摘要:一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。 示例 1: 输入:nums = [4,1,4,6] 输出:[1,6] 或 [6,1] 示例 2: 输入:nums = [1,2,10,4,1,4,3, 阅读全文
posted @ 2020-03-11 22:47 USTC丶ZCC 阅读(153) 评论(0) 推荐(0)
摘要:S = "aaabcdbbdcccf" lst = sorted(S, key=lambda x: S.count(x), reverse=True) lst 输出:['c', 'c', 'c', 'c', 'a', 'a', 'a', 'b', 'b', 'b', 'd', 'd', 'f'] 阅读全文
posted @ 2019-10-24 21:57 USTC丶ZCC 阅读(187) 评论(0) 推荐(0)
摘要:给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。 你应当保留两个分区中每个节点的初始相对位置。 示例: 输入: head = 1->4->3->2->5->2, x = 3 输出: 1->2->2->4->3->5思路:用两个链表分别存小于x和大 阅读全文
posted @ 2019-04-26 17:28 USTC丶ZCC 阅读(133) 评论(0) 推荐(0)
摘要:给定一个单链表 L:L0→L1→…→Ln-1→Ln , 将其重新排列后变为: L0→Ln→L1→Ln-1→L2→Ln-2→… 不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例1:给定链表 1->2->3->4, 重新排列为 1->4->2->3. 示例2:给定链表 1->2->3- 阅读全文
posted @ 2019-04-25 11:11 USTC丶ZCC 阅读(261) 评论(0) 推荐(0)
摘要:给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字,比如: 输入: 1->2->3->3->4->4->5 输出: 1->2->5 def deleteDuplicates(self, head: ListNode) -> ListNode: dummynode = 阅读全文
posted @ 2019-04-24 09:22 USTC丶ZCC 阅读(131) 评论(0) 推荐(0)
摘要:个区间若能合并,则第一个区间的右端点一定不小于第二个区间的左端点。所以先把区间集合按照左端点从小到大进行排序,接着从第一个区间开始遍历,对每个区间执行如下操作: 1.首先保存该区间的左端点start和右端点end; 2.从该区间的下一个区间开始,依次比较此区间的左端点与上一个区间的右端点,若满足合并 阅读全文
posted @ 2019-04-01 11:18 USTC丶ZCC 阅读(539) 评论(0) 推荐(0)
摘要:这里我们可以考虑将 n 数之和降低为一个数加上 n-1 数之和的问题。依次降低 ,最低是二数之和的问题 ,二数之和问题容易解决。主要在于从 n 到 n-1 的过程需要理解 :下列代码中前几个 if 是对特殊情况的处理 ;通过新的 target = target - nums[i] 进行参数修改再次调 阅读全文
posted @ 2019-04-01 10:07 USTC丶ZCC 阅读(334) 评论(0) 推荐(0)
摘要:Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of 阅读全文
posted @ 2019-03-30 23:07 USTC丶ZCC 阅读(244) 评论(0) 推荐(0)
摘要:如图3×3的旋转过程: 如图4×4旋转过程: 阅读全文
posted @ 2019-03-29 14:31 USTC丶ZCC 阅读(243) 评论(0) 推荐(0)
摘要:最长回文子串问题:给定一个字符串,求它的最长回文子串长度。如果一个字符串正着读和反着读是一样的,那它就是回文串。 给定一个字符串,求它最长的回文子串长度,例如输入字符串'35534321',它的最长回文子串是'3553',所以返回 4。 最容易想到的办法是枚举出所有的子串,然后一一判断是否为回文串, 阅读全文
posted @ 2019-03-29 09:54 USTC丶ZCC 阅读(1080) 评论(0) 推荐(0)