简单来说数据结构是计算机存储,组织数组的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。 数组结构的分类:数组、栈、堆、队列、链表、树、图、散列表,本文主要介绍栈和堆。 一、定义 栈(Stack)又名堆栈,它作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。它按照先 ...
分类:
Web程序 时间:
2020-01-13 18:22:46
阅读次数:
123
查找的一些基本概念 查找表 是由同一类型的 数据元素 构成的集合,它是一种以查找为“核心”,同时包括其他运算的非常灵活的数据结构。 上面概念中的集合和数学上的定义是一致的,简单地说就是由任意一些可分辨的对象构成的整体 作为一个数学概念,集合的元素是没有任何限制。 作为一种数据结构,查找表的逻辑结构是 ...
分类:
其他好文 时间:
2020-01-12 11:36:28
阅读次数:
117
位图 问题 问题1:如何实现网页爬虫中url去重功能? 分析 传统数据结构散列表、红黑树、跳表这些动态数据结构,都能支持快速地插入、查找数据。 但通常爬虫爬取的网页数量级都比较大,假设为10亿个网页,估算一下散列表存储所需的内存: 为了判重,我们把这 10 亿网页链接存储在散列表中。 假设一个 UR ...
分类:
编程语言 时间:
2020-01-08 21:02:20
阅读次数:
121
HashMap是Java中对 散列表(也叫哈希表) 的实现,是Java程序员使用频率最高的用于映射(键值对)处理的数据类型,同时也是面试官的最爱。搞懂HashMap,很重要。 看了那么多篇文章,不如走读一次代码。 变量参数 先来看看HashMap相对重要的变量, java / The default ...
分类:
其他好文 时间:
2020-01-05 11:30:29
阅读次数:
94
HashMap HashMap的数据结构:HashMap实际上是一个数组和链表(“链表散列”)的数据结构。底层就是一个数组结构,数组中的每一项又是一个链表。 hashCode是一个对象的标识,Java中对象的hashCode是一个int类型值。通过hashCode来算出指定数组的索引可以快速定位到要 ...
分类:
其他好文 时间:
2020-01-01 12:02:03
阅读次数:
73
引语: Redis 是一个高性能、(key/value)、分布式,基于内存运行、支持持久化的NoSQL数据库。 它也常被称为数据结构服务器,因为它存储的值(value)可以是String 、hash、list(有序、可索引;实现队列、栈)、set、zset(有序集合)等数据类型。这也是redis相比 ...
分类:
其他好文 时间:
2019-12-30 17:13:24
阅读次数:
132
HashMap源码分析 哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如 memcached)的核心其实就是在内存中维护一张大的哈希表。 一、什么是哈希表 在讨论哈希表之前,我们先大概了解下其他数据结构在新增,查找等基础操作执行性能 数组: 采 ...
分类:
其他好文 时间:
2019-12-28 19:23:07
阅读次数:
80
数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成 。 常用的数据结构有:数组,栈,链表,队列,树,图,堆,散列表等。 数组:数组是可以再内存中连续存储多个元素的结构,在内存中的分配也是连续的,数组中的元素通过数组下标进行访问,数组下标从0开始。 优点:按照索引 ...
分类:
其他好文 时间:
2019-12-25 12:55:23
阅读次数:
78
哈希表 哈希表(Hash Table, 又称为散列表),是一种线性表的存储结构。哈希表由一个直接寻址表和一个哈希函数组成。哈希函数h(k)将元素关键字k作为自变量,返回元素的存储下标。 简单哈希函数: 除法哈希:h(k) = k mod m 乘法哈希:h(k) = floor(m(kA mod 1) ...
分类:
编程语言 时间:
2019-12-22 16:35:39
阅读次数:
100
l1 = [1,2,3,4] t1 = (1,2,3,4) d1 = {'name':'tank','age':73} print(*l1) 打散列表 1 2 3 4 print(*t1) 打散元组 1 2 3 4 print(*d1) 打散字典 name age 只能得到keyprint(**d1 ...
分类:
其他好文 时间:
2019-12-20 01:07:13
阅读次数:
93