内部排序:数据记录在内存中进行排序外部排序:待排序文件较大,需要访问外存常见的内部排序:插入排序(直接插入、折半插入、希尔排序)、交换排序(冒泡、快排)、选择排序(简单选择、堆排序)、归并排序(2路归并)、基数排序外排:归并排序(多路归并)、各种内排的性能比较:插入排序每次将一个待排序的记录按关键字大小插入到前面已排好序的子序列中,直到全部记录插入完成每一轮能够确定一个最终位置的记录,某时刻的状态
分类:
编程语言 时间:
2020-07-19 16:23:30
阅读次数:
50
题目 题目链接 已知一个十进制数n,和基数m,判断 n是否为质数;且n转换为m进制并反转后对应的十进制数是否为质数 解题思路 1 质数判断 2 进制转换 易错点 1 输入的不一定为质数,题目要求判断两个内容: n是否为质数;n转换为m进制并反转后对应的十进制数是否为质数 2 m<=10,所以十进制进 ...
分类:
其他好文 时间:
2020-07-19 11:49:20
阅读次数:
64
基本思路分析: 首先选择第一个数作为基数,因为只有一个数,所以他就是一个有序的数组嘛。 然后遍历他后面的数,如果比他小,插入到他前面,如果比他大,就插入到他后面。此时就有两个数已经成为有序的了; 在遍历下一个数,找到他该插入的位置,即该位置的后一个数比改数大,前一个数比该数小。 5 1 4 2 3 ...
分类:
编程语言 时间:
2020-07-18 16:04:40
阅读次数:
42
描述 log10() 方法返回以10为基数的x对数。 语法 以下是 log10() 方法的语法: import math math.log10( x ) 注意:log10()是不能直接访问的,需要导入 math 模块,通过静态对象调用该方法。 参数 x -- 数值表达式。 返回值 返回以10为基数的 ...
分类:
编程语言 时间:
2020-07-18 15:45:58
阅读次数:
65
题目链接 题目链接 题目 给定一个十进制数和基数,判断对应进制数是否回文数,并打印 1 0是回文数 2 题目中没有标明大于10的进制中字母如何处理,试错发现,并不能将两位数字转化为字母,而是使用两位数字,并且在判断回文和打印时,这个两位数字都看做一个整体 解题思路 因为要用两位数字表示基数大于10的 ...
分类:
其他好文 时间:
2020-07-18 13:53:20
阅读次数:
87
快速排序 快速排序(Quicksort)是对冒泡排序的一种改进。基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列 选择最后一个数为基数,以 ...
分类:
编程语言 时间:
2020-07-17 19:32:32
阅读次数:
70
楔子 在我们实际开发的过程中,可能会遇到这样一个问题,当我们需要统计一个大型网站的独立访问次数时,该用什么的类型来统计? 如果我们使用 Redis 中的集合来统计,当它每天有数千万级别的访问时,将会是一个巨大的问题。因为这些访问量不能被清空,我们运营人员可能会随时查看这些信息,那么随着时间的推移,这 ...
分类:
编程语言 时间:
2020-07-17 01:12:19
阅读次数:
109
一、排序的概念:将一系列数据按照某个关键字进行递增或递减的顺序排列起来 二、排序的方式: 1、插入排序: 直接插入排序: 一 一比对 折半插入排序:在已经拍好的序列中插入,适合初始记录无序、n较大的情况 希尔排序:待排序的关键字基本有序->效率较高 分组插入,先分割(相隔某个增量的记录),对每组进行 ...
分类:
其他好文 时间:
2020-07-12 22:30:17
阅读次数:
65
本章学习了排序这一操作,排序方法分为两大类: 内部排序:不需要访问外存,分为插入类、交换类、选择类、归并类(2-路归并排序)和分配类(基数排序)。 外部排序:不可能在内存中完成。 (一)插入排序 1、直接插入排序 稳定排序,更适合于初始记录基本有序(正序)的情况 1 void InsertSort( ...
分类:
其他好文 时间:
2020-07-12 18:58:36
阅读次数:
54
HyperLogLog 简介 Redis 在 2.8.9版本添加了HyperLogLog结构Redis HyperLogLog 是用来做基数统计的算法,HyperLogLog的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定的、并且是很小的;?在Redis里面,每个Hyper ...
分类:
其他好文 时间:
2020-07-08 23:23:50
阅读次数:
94