今天刷力扣遇到了这样的问题: 一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。 之前没有遇到过类似的题型,看到之后很懵,看了题解才知道要用到分组异或的方式进行分组。题解又看了十分钟才终于理解解法的含义 ...
分类:
编程语言 时间:
2021-04-05 12:23:52
阅读次数:
0
1、时间复杂度o(1), o(n), o(logn), o(nlogn)。算法时间复杂度的时候有说o(1), o(n), o(logn), o(nlogn),这是算法的时空复杂度的表示。不仅仅用于表示时间复杂度,也用于表示空间复杂度。O后面的括号中有一个函数,指明某个算法的耗时/耗空间与数据增长量之 ...
分类:
其他好文 时间:
2021-04-05 11:50:18
阅读次数:
0
# Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None # 递归 # 时间复杂度:O(n ...
分类:
其他好文 时间:
2021-03-29 12:51:26
阅读次数:
0
问题 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径 示例 输入:m = 3, n = 7 输出:28 解法 定义状态:dp[ ...
分类:
其他好文 时间:
2021-03-11 16:26:22
阅读次数:
0
//在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 //// 示例 1: //// 输入: 4->2->1->3//输出: 1->2->3->4// //// 示例 2: //// 输入: -1->5->3->4->0//输出: -1->0->3->4->5 // Rel ...
分类:
编程语言 时间:
2021-03-05 13:21:06
阅读次数:
0
题目描述 判断给定的链表中是否有环。如果有环则返回true,否则返回false。 你能给出空间复杂度的解法么? public class Solution { public boolean hasCycle(ListNode head) { /* 链表有环思路:如果有环,设置一个快指针,设置一个慢指 ...
分类:
其他好文 时间:
2021-03-05 13:00:21
阅读次数:
0
题目描述 题目链接 思路1 Hash表 很直接,代码略 由于题目的follow-up要求空间复杂度O(1),所以,这个方法其实并不是最优解。 思路2 一次删除两个不同的数 一次删除两个不同的数,如果存在majority element,那么这个majority element一定会最后剩下来, 但是 ...
分类:
其他好文 时间:
2021-02-23 14:06:57
阅读次数:
0
一、时间复杂度 是用来估计算法运行时间的一个式子(单位) 一般来说,时间复杂度高的算法比复杂度低的算法慢 常见的时间复杂度排序(按效率排序)o(1)<o(logn)<o(n)<o(logn)<o(n*n)... 如何一眼判断时间复杂度: a.循环减半的过程 --》 o(logn) ; b.几次循环就 ...
分类:
其他好文 时间:
2021-02-20 12:44:52
阅读次数:
0
题目描述: 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示例: 现有矩阵 matrix 如下: [ [1, 4, 7, 11, 15], [2, 5, 8 ...
分类:
编程语言 时间:
2021-02-09 11:47:39
阅读次数:
0
这道题要求将数组中奇数放前面偶数放后面,不需要排序。 第一时间想到的是额外数组res存结果,遍历原数组奇数存在res前面,偶数存在res后面。 时间复杂度O(n),空间复杂度O(n),好处是没有修改原数组 class Solution { public int[] exchange(int[] nu ...
分类:
编程语言 时间:
2021-02-08 11:47:07
阅读次数:
0