目录 1. 各种算法的比较 2. 算法不稳定定义 3. 不稳定的几种算法 1. 各种算法的比较 2. 算法不稳定定义 定义:在排序之前,有两个数相等,但是在排序结束之后,它们两个有可能改变顺序. 说明:在一个待排序队列中,A和B相等,且A排在B的前面,而排序之后,A排在了B的后面.这个时候,我们说这 ...
分类:
其他好文 时间:
2020-04-14 12:27:44
阅读次数:
68
时间复杂度O(n),空间复杂度不会。。 解题、代码思路 1. 字符串result存最终解析结果; 2. 循环遍历字符串text,找到&时开始判断是不是特殊字符,不是&直接加入该字符到result; 3. 判断特殊字符,如果是特殊字符,把特殊字符加入到result,假如不是特殊字符,将判断过的字符全部 ...
分类:
Web程序 时间:
2020-04-12 14:53:19
阅读次数:
93
时间复杂度O(n2),空间复杂度应该是O(n) 题目 解题思路 1. 排序,就可以按顺序来对比知道有没有那个字母和够不够用了; 代码思路 1. 排除特殊情况; 2. 用两个vector存起两个string; 3. 排序; 4. 循环遍历赎金信,record记录对比杂志magazine相应位置时要后移 ...
分类:
其他好文 时间:
2020-04-12 14:39:27
阅读次数:
76
时间复杂度O(m n),空间复杂度不会分析。。。 题目 给你一个待查数组 queries ,数组中的元素为 1 到 m 之间的正整数。 请你根据以下规则处理所有待查项 queries[i](从 i=0 到 i=queries.length 1): 一开始,排列 P=[1,2,3,...,m]。 对于 ...
分类:
其他好文 时间:
2020-04-12 14:32:43
阅读次数:
58
典型的背包问题 本题当中,每样武器只能选一次,即要么选,要么不选。典型的 01 背包,状态转移: $dp[j]=\min{dp[j b[i]]+a[i],dp[j]}$ 因为有两个限制条件(质量和体积),所以在 01 背包基础上再加一维,空间复杂度$O(n^2)$,时间复杂度$O(n^3)$,数据在 ...
分类:
其他好文 时间:
2020-04-11 22:04:26
阅读次数:
62
出题指数(最大5):? 题目 给定一个正整数 ,找出最小的正整数 使得 的所有数位相乘恰好等于 。 如果不存在这样的结果或者结果不是 32 位有符号整数,返回 0。 样例 1 输入: 输出: 样例 2 输入: 输出: "LeetCode原题目指路" 提示: “不存在这样的结果”有一种情况是:给定的整 ...
分类:
编程语言 时间:
2020-04-11 20:56:28
阅读次数:
396
题目 一个长度为n 1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n 1之内。在范围0~n 1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。 示例 1: 示例?2: 限制:1 & nums) { int size = nums.size(); for (int i = ...
分类:
其他好文 时间:
2020-04-10 22:25:52
阅读次数:
68
我没懂为什么两个指标都这么差,看代码的时间复杂度是O(n),空间复杂度是O(1)。 题目 给定一个数组,将数组中的元素向右移动?k?个位置,其中?k?是非负数。 示例 1: 输入: [1,2,3,4,5,6,7] 和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右旋转 1 步: [ ...
分类:
编程语言 时间:
2020-04-10 21:06:24
阅读次数:
86
前言 承接上文 "基础排序算法—冒泡,插入,选择" ,相比之下,归并排序和快速排序更为高效,时间复杂度均为O(nlogn),相比简单排序的O(n^2)好了很多,下面介绍一下这两种算法的思路,实现和主要指标.主要思路来自 正文 归并排序 主要思路 在归并排序采用分冶的思想,使用递归实现.描述如下 1. ...
分类:
编程语言 时间:
2020-04-10 00:45:46
阅读次数:
77
[TOC] 各种排序算法时间复杂度及空间复杂度对比 Timsort与其他比较排序算法时间复杂度(time complexity)的比较 空间复杂度(space complexities)比较 各种排序算法 同等硬件条件下,对相同长度的的列表排序,所有时常如下: 1.python内置方法sorted( ...
分类:
编程语言 时间:
2020-04-10 00:38:40
阅读次数:
84