内部排序是指在排序期间数据元素全部存放在内存的排序。外部排序是指在排序期间全部元素的个数过多,不能同时存放在内存,必须根据排序过程的要求,不断在内存和外存之间移动的排序。本次主要介绍常见的内部排序算法。 1. 直接插入排序 直接插入排序的算法思想是把待排序序列a[n]中的n个元素看作是一个有序表和无 ...
分类:
编程语言 时间:
2021-07-19 16:39:46
阅读次数:
0
算法方向分析 对于这题 \(\le 1000000\) 的数据规模显然只允许我们用一重循环。 最长,可见这是道最值问题。 最值问题可以用贪心,DP,二分…… 这道题我们用 DP 来做。 构建状态 首先,我们需要构建状态,状态的构建不是唯一的,受最长上升子序列的影响,我是这样构建的:令 \(f_i\) ...
分类:
其他好文 时间:
2021-07-19 16:39:33
阅读次数:
0
3768. 字符串删减 - AcWing题库 思路 双指针的练习 C++代码 #include <iostream> #include <cstring> #include <algorithm> using namespace std; int main() { int n; string s; ...
分类:
编程语言 时间:
2021-07-19 16:34:51
阅读次数:
0
前言: 冒泡,选择:使用了普通双指针法 插入,快速,归并:使用了二分法,递归 冒泡排序 原理:不断比较相邻两个数得大小,把较大的数交换到靠后的位置 def bubbleSort(iList): '''冒泡排序 ''' if len(iList) <= 1: return iList for i in ...
分类:
编程语言 时间:
2021-07-16 17:32:50
阅读次数:
0
需求背景: 查看前top N的用户 查看自己的排名 用户积分变更后,排名及时更新 1:保留排行榜2倍大小的缓存 2:对比排行榜中最小的数值,比它大,插入排行榜中 参考:http://www.cocoachina.com/articles/13638 ...
分类:
编程语言 时间:
2021-07-15 19:00:52
阅读次数:
0
https://www.cnblogs.com/shizuchengxuyuan/p/15008799.html ...
分类:
编程语言 时间:
2021-07-15 18:59:26
阅读次数:
0
C++ STL中的算法(Algorithms)作用于容器。它们提供了执行各种操作的方式,包括对容器内容执行初始化、排序、搜索和转换等操作。按照对容器内容的操作可将STL 中的算法大致分为四类: (1)只读算法:指不直接修改其所操作的容器内容的算法。 (2)可变序列算法:指可以修改它们所操作的容器内容 ...
分类:
编程语言 时间:
2021-07-12 18:25:22
阅读次数:
0
Go 语言数组 Go 语言提供了数组类型的数据结构。 数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,这种类型可以是任意的原始类型例如整型、字符串或者自定义类型。 相对于去声明 number0, number1, ..., number99 的变量,使用数组形式 numbers[0], n ...
分类:
编程语言 时间:
2021-07-12 18:22:21
阅读次数:
0
选择排序: 数据较少时可以用,缺点:时间复杂度n的平方,优点:空间复杂度小 具体实现: /** * 选择排序 * * @param $array * @return mixed */ public function sort($array) { $len = count($array); if ($ ...
分类:
编程语言 时间:
2021-07-12 18:06:27
阅读次数:
0
快速排序: 总体最优,数据大时性能最好 具体实现:设置一个基准值,小于基准值放左边,大于基准值放右边,最后递归继续排左右两侧的,最后排完后合并 /** * 快速排序 * * @param $array * @return array */ public function sort($array): ...
分类:
编程语言 时间:
2021-07-12 18:06:10
阅读次数:
0