数据结构
文章平均质量分 77
sandwu
这个作者很懒,什么都没留下…
展开
-
Python数据结构和算法(六):哈希算法(hash)的六大应用以及哈希一致性的介绍和实现
文章目录前文哈希算法定义和特征哈希算法应用安全加密散列函数唯一标识数据校验前文 说到哈希算法大家应该都不陌生,但系数它的应用范围,大多数人只能答出少部分,比如用于加密,比如用于散列表,比如MySQL的哈希索引,但再多可能就不清楚了。实际上总结起来有以下7点:加密、唯一标识、数据校验、散列函数、负载均衡、数据分片、哈希一致性的分布式存储。前面6个会简单地讲过,重点记录下第七点,而哈希一致性也是...原创 2020-03-17 10:11:32 · 1471 阅读 · 0 评论 -
Python数据结构和算法(五):回溯真没你想的那么难(十道leetcode真题带你跨过这个坑)!
文章目录前文回溯算法定义和应用题型回溯算法定义回溯算法应用题型回溯算法题型讲解combination sum系列39. Combination Sum40. Combination Sum II216. Combination Sum IIIsubsets系列78. Subsets90. Subsets II79. Word SearchUnique Paths系列62. Unique Paths...原创 2020-03-15 18:33:25 · 868 阅读 · 0 评论 -
Python数据结构和算法(四):10分钟掌握双指针在线性数据结构里的使用!
文章目录前文双指针的定义快慢指针读写指针前后指针(左右指针)总结前文 在链表、数组、队列、栈等线性数据结构里,经常会用到各种各样的解法,比如针对有序的二分法、针对遍历的dfs(深度优先遍历)、bfs(广度优先遍历)等,而其中利用双指针来遍历找值的方法也是非常的万金油,碰到线性结构的题时可以考虑考虑,这里介绍leetcode的题型来让你更快更轻松的了解并掌握该方法的核心!双指针的定义 那...原创 2020-02-29 22:45:11 · 448 阅读 · 0 评论 -
Python数据结构和算法(三):链表介绍以及经典题型训练(leetcode真题)!
文章目录前文链表介绍leetcode真题总结前文 随着第一篇:Python数据结构和算法(一):基于内存的五大排序算法!和第二篇:Python数据结构和算法(二):DFS和BFS实现树的三大遍历排序算法(leetcode真题)!的记录,开始第三篇关于链表的笔记记录吧!在刷题的过程中,数组、队列、栈等等的题型相对容易理解的多,而树、链表的题型则很难理解,因为链表涉及到指针,而树往往涉及到递归,...原创 2019-11-30 17:32:21 · 477 阅读 · 0 评论 -
Python数据结构和算法(二):DFS和BFS实现树的三大遍历排序算法(leetcode真题)!
文章目录前文树的简介用DFS实现前序遍历、中序遍历、后序遍历用BFS实现前序遍历、中序遍历、后序遍历前文 作为数据结构和算法的第二篇,还是先跳过数组、链表等基础的,直接上树的遍历,毕竟代码非常有套路,掌握起来很简单!附上第一篇链接:Python数据结构和算法(一):基于内存的五大排序算法!树的简介 树作为数据结构里很重要的一环,它的介绍一般在数组、链表、栈、队列之后,因为不属于线性结构...原创 2019-11-23 14:18:35 · 510 阅读 · 0 评论 -
Python数据结构和算法(一):基于内存的五大排序算法!
文章目录前文冒泡排序插入排序选择排序快速排序前文 学习数据结构和算法很久了,坚持刷题了半年多,自己也一直想总结关于Python数据结构和算法,于是,就从这篇开始吧!《数据结构和算法》作为程序员的必修课,一直是大家不断努力的方向,不过网上针对该门课的大牛大多数都是java、c++之类的,很少有用到Python来介绍的,所以我就出一系列依据Python来介绍的博客,希望大家都能有所收获! 我...原创 2019-10-31 23:39:43 · 567 阅读 · 0 评论 -
Python字典为什么快?为什么是乱序?
最近在看python数据结构,对字典有了新的认识,mark一下。 python的数据类型,以列表和字典的使用最为广泛,其中列表以其强大的增删改查,备受人们的青睐,我个人也特别喜欢列表。但当列表数据过多时,需要查询第n个数据,其性能则为O(n),此时字典就登场了,以其强大的底层结构,可以做到查询为O(1),即常量查询,那原因是什么呢?字典的底层结构 说到字典的底层结构,实际上是个散列表...原创 2018-09-20 13:30:23 · 6805 阅读 · 2 评论 -
Python collections模块介绍
前言 说到python的数据类型(也称为容器),大家都耳熟能详:str\tuple\list\dict\set等,其中又分为可变类型和不可变类型,这些数据类型在项目中充当着重要的作用。但是除了这些,python还提供了一个强大的模块——collections,可以给我们更多的选择。可命名元组——namedtuple 首先来了解下元组的拓展类型——可命名元组,元组在我们的印象中通常称为不可...原创 2018-10-07 23:51:38 · 204 阅读 · 0 评论