Hash 哈希
Hash 算法
散列表(Hash table,也叫哈希表),是依据关键码值(Key value)而直接进行訪问的数据结构。
也就是说,它通过把关键码值映射到表中一个位置来訪问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。
基础概念
比方我们存储 70 个元素,但我们可能为这 70 个元素申请了 100 个元素的空间。
70/100=0.7,这个数字称为...
2018-05-30 01:57:55 |
Algorithm
Hash 完美 hash
缘起
前几天去参加云栖大会 2019,在会上听到这个名词。
感觉很有趣,值得学习一波。
完美哈希函数(Perfect Hash Function)
完美 哈希函数(Perfect Hash Function,简称PHF)是没有冲突的哈希函数,也就是,函数 H 将 N 个 KEY 值映射到 M 个整数上,这里 M>=N ,而且,对于任意的 KEY1 ,KEY2 ,H( KEY1 ...
2018-05-30 01:57:55 |
Algorithm
Hash 算法实现
JDK 等源码 hash
jdk7 HashMap
JDK7 hashMap 的 hash 源码如下:
/**
* Retrieve object hash code and applies a supplemental hash function to the
* result hash, which defends against poor qualit...
2018-05-30 01:57:55 |
Algorithm
Hash 碰撞解决方式
Hash
Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出就是散列值。根据散列值作为地址存放数据,这种转换是一种压缩映射,简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。查找关键字数据(如K)的时候,若结构中存在和关键字相等的记录,则必定在f(K)的存储位置上。由此,不需比较便可直接取得所查记录。我...
2018-05-30 01:57:55 |
Algorithm
Scrapy
Scrapy
Scrapy is an open source and collaborative framework for extracting the data you need from websites.
In a fast, simple, yet extensible way.
安装实战
更新 pip
$ sudo pip install --upgrade pi...
2018-05-25 13:49:10 |
Python
Redisson 入门教程
Redisson
Redisson - distributed Java objects and services (Set, Multimap, SortedSet,
Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, AtomicLong,
Map Reduce, Publish / Sub...
2018-05-24 15:03:04 |
Cache
NodeJs-08-database access js 如何直接访问数据库实战
Q1-js 可以直接和数据库交互吗?
JavaScript 本身不能直接与数据库交互,但在 Web 应用程序中,可以使用 JavaScript 操作数据库。
通常情况下,JavaScript 通过 AJAX 请求从服务器获取数据,然后将数据呈现给用户。
在服务器端,可以使用 Node.js 运行 JavaScript 代码,并使用 Node.js 提供的模块来连接数据库。
例如,可以...
2018-05-02 12:35:38 |
NodeJs
NodeJs-07 Do Not Block Event Loop
TL; DR
Node.js在事件循环(初始化和回调)中运行JavaScript代码,并提供一个工作池来处理像文件I/O这样的昂贵任务。
节点伸缩性好,有时比像Apache这样的重量级方法要好。
Node的可伸缩性的秘密在于它使用少量的线程来处理许多客户机。
如果Node可以使用更少的线程,那么它可以花费更多的系统时间和内存来处理客户机,而不是为线程(内存、上下文切换)支付空间和时间开销。...
2018-05-02 12:35:38 |
NodeJs