数据结构与算法
常用数据结构和算法的原理讲解, 和python版本的代码实现
DefaultTest
所有的光芒都需要时间被看到
展开
-
python实现单向循环链表 判空 长度 遍历 头插 尾插 插入 删除 范围查询 反转
python实现单向循环链表 判空 长度 遍历 头插 尾插 插入 删除 范围查询 反转原创 2019-10-21 18:07:03 · 262 阅读 · 0 评论 -
数据结构与算法 :搜索算法之二分查找(递归 | 非递归) python实现
# coding=utf-8def binary_search(li, item): """ 递归版本的二分查找 :param li: 在哪个列表中查找元素 :param item: 要查找的元素 :return: 如果找到返回True,否则返回False """ n = len(li) # 递归的终止条件 if n...原创 2019-10-19 18:51:20 · 411 阅读 · 1 评论 -
数据结构与算法基础: 算法特征、时间复杂度、空间复杂度、大O表示法、抽象数据类型等概念
数据结构与算法的一些基础概念:算法特征、好坏衡量、时间复杂度、空间复杂度、数据结构、抽象数据类型原创 2019-10-19 18:12:05 · 874 阅读 · 0 评论 -
数据去重-布隆过滤器-redis版
海量数据处理, 选用 bloom过滤器; 这里使用redis版的实现# -*- coding: utf-8 -*-# 布隆过滤器redis版本实现# 1.多个hash函数的实现 和 求值# 2.hash表的实现 实现对应的映射 和判断# 3.Notice: the salts and the len of hash list mustn't modify in same proje...原创 2019-03-30 16:28:08 · 620 阅读 · 0 评论 -
爬虫等数据去重方案: 摘要算法 Simhash 布隆过滤器
1. 去重的应用场景和基本原理1.1 场景引入思考:1.防止发送重复的请求2.防止保存重复的数据原理:一致, 对二进制字符串去重1.2 基本原理:思考:明确 数据构成类型(字符串, 数字 , 对象, 特殊字符…) ==> 来制定去重方案判断依据: 什么样的数据算作重复数据?总结: 根据给定的 [判断依据] 和 [去重容器], 将原始数据逐一进行判断, 判...原创 2019-10-01 15:25:37 · 1893 阅读 · 0 评论 -
python实现单链表 判空 长度 遍历 头插 尾插 插入 删除 范围查询 反转
提示: 是我尝试去复习的过程中, 思路的步骤, 看起来有点像草稿, 后期如果有空加上文字描述说明我的思考过程在网上看了一些别的实现思路, 我觉得最难的其实是怎么去 抽象 我们要描述的 链表 等数据结构对象, 把它们根据在 内存中实际的存储方式 进行抽象. 这里最终是抽象成 Node 和 SingleLinkList 两个对象, 前者作为后者的 一个属性, 这属于 面向对象的多态. 最终, 暴露...原创 2019-10-07 19:52:51 · 715 阅读 · 2 评论 -
python实现双链表 判空 长度 遍历 头插 尾插 插入 删除 范围查询 反转
- coding:utf8 -class Node(object):“”“抽象出节点类”""def init(self, obj):self.pre = None # 指向上一个节点,初始为Noneself.data = obj # 指向self.next = Noneclass DoubleLinkList(object):“”“双向链表(双链表)”""def init(s...原创 2019-10-08 20:04:38 · 313 阅读 · 0 评论