![](https://img-blog.csdnimg.cn/202009071457194.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。
狂奔的菜鸡
知行合一,格物致知。
展开
-
平衡二叉树:AVL树(python)
要了解平衡二叉树,先要知道什么是平衡因子。平衡因子 平衡因子:左子树深度 – 右子树深度 如下面2幅图平衡因子分别为 -1、0 &原创 2020-10-22 22:01:35 · 371 阅读 · 0 评论 -
关于keras的后端
面试问到了keras后端,好好总结一下。什么是后端? keras是一个模型级的库,提供了快速构建深度学习网络的模块。Keras并不处理如张量乘法、卷积等底层操作。这些操作依赖于某种特定的、优化良好的张量操作库。Keras依赖于处理张量的库就称为“后端引擎”。 Keras提供了两种后端引擎Theano/Tensorflow,并将其函数统一封装,使得用户可以以同一个接口调用不同后端引擎的函数如何修原创 2020-10-21 16:41:27 · 600 阅读 · 0 评论 -
时间复杂度和空间复杂度(Python)
时间复杂度: 时间复杂度通常用Big O notation来表示,常见的时间复杂度有:O(1)O(1)O(1):常数复杂度O(logn)O(logn)O(logn):对数复杂度O(n)O(n)O(n):线性时间复杂度O(n2)O(n^2)O(n2):平方O(n3)O(n^3)O(n3):立方O(2n)O(2^n)O(2n):指数O(n!)O(n!)O(n!):阶乘 只看最高复杂度原创 2020-10-12 12:19:32 · 1303 阅读 · 0 评论 -
数据结构之二叉排序树(Python实现建立、查找、删除)
什么是二叉排序树? 二叉排序树是这样一棵二叉树,若左子树不空,则左子树上所有结点均小于根结点,若右子树不空,则右子树上所有结点均大于根结点其左、右子树也是二叉排序树。(或为空树)(关于什么是二叉树,可以看我的另一篇博客:树和二叉树)二叉排序树的建立...原创 2020-10-07 20:15:29 · 1887 阅读 · 2 评论 -
一篇文章搞懂:二叉树之哈夫曼树
目录简介哈夫曼树的构造哈夫曼编码 关于树与二叉树的其它概念和知识,可以看我的另一篇博客:一篇文章读懂:树和二叉树简介 要想了解哈夫曼树(最优二叉树,或赫夫曼树),先要了解以下概念:路径:从树中一个结点到另一个结点之间的分支构成两个结点之间的路径;路径长度:路径上的分支数目。就是从一个结点到另一个结点有多少个路径;结点的路径长度:从根到该结点的路径长度;树的路径长度:从树根到每一原创 2020-10-04 16:50:39 · 916 阅读 · 0 评论 -
一篇文章读懂:树和二叉树
目录树二叉树满二叉树完全二叉树二叉树的存储结构顺序存储结构链式存储结构二叉树的遍历线索二叉树赫夫曼树树和森林树与二叉树的转换森林与二叉树的转换树 树:是一种抽象数据类型或是实现这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。由n(n>0)个有限结点组成一个具有层次关系的集合。 特点:每个结点有零个或多个子结点;没有父结点的节点称为根结点;每一个非根结点有且只有一个父原创 2020-10-04 15:26:24 · 151 阅读 · 0 评论 -
数据结构:线性表(Python实现基本操作)
目录简介顺序结构顺序表链式结构单链表循环链表双向循环链表简介线性表:n 个数据元素的有限序列。是一种常见的线性结构。线性结构特点:第一个元素无前驱最后一个元素无后继除第一个元素和最后一个元素外,所有的元素都有前驱和后继顺序结构顺序表 线性表的顺序存储结构特点:逻辑上相邻的元素物理位置上相邻随机访问 只要确定好了存储线性表的起始位置,线性表中任一数据元素都可以随机存取,原创 2020-10-03 19:20:49 · 4149 阅读 · 2 评论 -
循环队列(Circular Queue)
可以看下这个博主写得非常详细:wowocpp 循环队列是 队列的一种特殊形式。首先介绍队列,然后引申出循环队列。 队列又称为“先进先出”(FIFO)线性表 :限定插入操作只能在队尾进行,而删除操作只能在队首进行 队列也可以采用顺序存储结构或链表结构来实现,分别称为顺序队列和链队列队列的顺序表示—顺序队列 &n转载 2020-09-13 09:28:04 · 1896 阅读 · 0 评论 -
数据结构几大排序算法总结(实现、复杂度)
目录简介冒泡排序,快速排序简单选择排序堆排序归并排序插入排序1 直接插入排序2 希尔排序(缩小增量排序)3 折半插入排序总结简介 排序在数据结构中的内部排序部分,主要介绍了几大常见的排序算法,这里做一下简单的分析总结。 排序: 按关键字大小顺序排列数据。 时间复杂度: 简单的排序方法 O(n2n^2n2),先进的排序方法 O(nlogn原创 2020-09-11 16:22:13 · 1766 阅读 · 0 评论 -
快速排序(详解及python实现)
快速排序(Quicksort)是对冒泡排序的一种改进。快速排序由C. A. R. Hoare在1962年提出。采用了分治法。基本思想:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。在一篇博客上看到给出的一种快速排序的方法快速排序(过程图解)但感觉复杂化了举例子:对序列:9,4,3原创 2020-09-07 18:16:58 · 719 阅读 · 0 评论 -
哈希表(Hash table)
哈希表(Hash table,也叫散列表),是根据关键码值而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash) 函数。&原创 2020-09-07 16:32:04 · 292 阅读 · 0 评论