散列表的查询效率并不能笼统地说成是 O(1)。它跟散列函数、装载因子、散列冲突等都有关系。 如果散列函数设计得不好,或者装载因子过高,都可能导致散列冲突发生的概率升高,查询效率下降。 在极端情况下,有些恶意的攻击者,有可能通过精心构造的数据,使得所有的数据经过散列函数之后,都散列到同一个槽里。 如果 ...
分类:
其他好文 时间:
2020-07-24 09:23:21
阅读次数:
81
快速排序 思想:依据一个中值数据项,把数据表分成两半:小于中值的一半和大于中值的一半,然后把每部分分别进行快速排序(递归)。 其中递归条件: 基本结束条件:数据表仅有一个数据项 缩小规模:根据中值,将数据表分为两半,最好的情况是相等规模的两半 调用自身:将两半分别调用自身进行排序(排序基本操作在分裂 ...
分类:
编程语言 时间:
2020-07-23 23:13:22
阅读次数:
83
Traceback (most recent call last): File "manage.py", line 22, in <module> execute_from_command_line(sys.argv) File "D:\python_learn\meiduo_project\env ...
分类:
数据库 时间:
2020-07-22 11:10:04
阅读次数:
117
数组中出现次数超过一半的数字 题目链接:https://leetcode-cn.com/problems/shu-zu-zhong-chu-xian-ci-shu-chao-guo-yi-ban-de-shu-zi-lcof/ 题目内容:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 ...
分类:
编程语言 时间:
2020-07-21 22:51:19
阅读次数:
94
写一个判素数的函数,在主函数输人一个整数,输出是否为素数的信息 题目解析: 素数是一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做素数 该题可以使用概念直接判断法求解,不过不需要判断所有的数据,只需要判断数据的一半即可,因为偶数不可能为素数(除了2),所以只需判断该数的一半即可的到 ...
分类:
其他好文 时间:
2020-07-21 22:39:04
阅读次数:
67
css控制div的各种形状 CSS3的一个非常酷的特性是允许我们创建各种规则和不规则形状的图形,从而可以减少图片的使用。 以前只能在Photoshop等图像编辑软件中制作的复杂图形现在使用CSS3就可以完成了。 通过使用新的CSS属性,像transform和border-radius,我们可以创建非 ...
分类:
Web程序 时间:
2020-07-21 14:10:39
阅读次数:
121
快速傅里叶变换 快速傅里叶变换(fast Fourier transform),即利用计算机计算离散傅里叶变换(DFT)的高效、快速计算方法的统称,简称FFT。快速傅里叶变换是1965年由J.W.库利和T.W.图基提出的。采用这种算法能使计算机计算离散傅里叶变换所需要的乘法次数大为减少。 —— 百度 ...
分类:
其他好文 时间:
2020-07-21 01:02:39
阅读次数:
111
在一个无序数组中,存在一个数,它出现的次数大于数组长度的一半。输出这个数 一、排序、遍历 二、摩尔投票法 摩尔投票算法是一种使用线性时间和常数空间查找大部分元素序列的算法。 最简单的形式就是,查找输入中重复出现超过一半以上(必须大于n/2,等于不算)的元素。如果序列中没有这种元素,算法不能检测到正确 ...
分类:
其他好文 时间:
2020-07-18 22:36:05
阅读次数:
120
希尔排序是插入排序的升级版 思路其实也大同小异 先对数组进行分组,假设8个数字 定义一个步长,步长设为数组长的的一半,即 arr.length / 2 则最开始步长为 8 / 2 = 4 (下标)04、15、26、37 各位一组进行插入排序比较 第二次步长为 4 / 2 = 2 则0 2 4 6、1 ...
分类:
编程语言 时间:
2020-07-18 15:54:00
阅读次数:
57
题目: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2] 输出: 2 限制: 1 <= 数组长度 <= 50000 解题思路: 由于要寻找的是出现次数超 ...
分类:
编程语言 时间:
2020-07-17 14:03:08
阅读次数:
55