数据结构与算法学习
文章平均质量分 81
非零因子
终身学习
展开
-
力扣(Leetcode)——python3
目录动态规划70、爬楼梯递归-超限制迭代509、斐波那契数递归法O(2^n)迭代746、使用最小花费爬楼梯1137、第N个泰波那契序列递归-超限制迭代动态规划Dynamic Programming递归+迭代70、爬楼梯力扣https://leetcode.cn/problems/climbing-stairs/假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?例:...原创 2022-05-10 11:51:37 · 1519 阅读 · 0 评论 -
数据结构与算法——树与树算法
目录第六章树树的概念树的术语树的种类树的存储与表示常见的一些树的应用场景二叉树二叉树的基本概念二叉树的性质(特性)二叉树的节点表示以及树的创建二叉树的遍历广度优先遍历(层次遍历)深度优先遍历第六章树树的概念每个节点有零个或多个子节点; 没有父节点的节点称为根节点; 每一个非根节点有且只有一个父节点; 除了根节点外,每个子节点可以分为多个不相交的子树;树的术语节点的度:一个节点含有的子树的个数称为该节点的度; 树原创 2022-03-07 11:12:52 · 98 阅读 · 0 评论 -
数据结构与算法——排序与搜索
第五章排序算法的稳定性排序算法:把无序序列排列成有序序列的算法。冒泡排序选择排序插入排序快速排序希尔排序归并排序常见排序算法效率比较二分查找原创 2022-03-03 22:08:47 · 242 阅读 · 0 评论 -
数据结构与算法——栈与队列
目录第四章栈与队列栈的结构实现队列与双端队列的实现第四章栈与队列栈是经常使用的一种数据结构,是一种用来保存数据的容器,它的特点在于只能允许在容器的一端(称为栈顶端指标,英语:top)进行加入数据(英语:push)和输出数据(英语:pop)的运算。栈的特点:后进先出(LIFO, Last In First Out)队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列的特点:先进先出(First In First Out)栈与线.原创 2022-02-12 01:03:09 · 237 阅读 · 0 评论 -
数据结构与算法——链表
目录第三章链表的提出单链表的ADT模型python中变量标识的本质单链表及节点的定义代码单链表的基本操作单链表与顺序表的对比双向链表添加元素双向链表删除元素第三章链表的提出线性表:顺序表+链表顺序表是按顺序排列的链表是用线串起来的(可以随意添加、删除元素)Li=[200,400,600]三个单链表节点如下: 数据区 链接区 0×11 200 0×34 数据区 链接区 0×34 400原创 2022-02-10 22:56:47 · 936 阅读 · 0 评论 -
数据结构与算法——顺序表
第二章基本顺序表与元素外围顺序表基本数据类型:整型,浮点型,字符串---基本数据类型怎么组织起来?内存是一个连续的存储空间,以一个字节作为存储单元(一个字节是8位)查找内存中的地址,就可以得到字节中的信息不同基本数据类型需要占据多少个存储单元?---对于32位机器,一个基本整型占四个字节int a =1 #整型00000000 00000000 00000000 00000001# 也可以代表4个char,所以在初始要定义数据类型字符串已经是一个集合,一个char占一个字节原创 2022-02-04 22:55:25 · 535 阅读 · 0 评论 -
数据结构与算法——时间复杂度
算法是独立存在的一种解决问题的方法和思想1,如果 a+b+c=1000,且a^2+b^2=c^2(a,b,c为自然数),如何求出所有a、b、c可能的组合?枚举法(一个一个去试)a=0,b=0,c=0------不满足a+b+c=1000试a=0,b=0,c=4------不满足a+b+c=1000试a=0,b=1,c=0~1000算法的特征:输入可以有可以没有,输出至少有一个,有穷性:算法在有限的步骤可接受的时间范围内可以自动结束,确定性:实现的每一个步骤都有确定含义,可行性:算原创 2022-01-31 01:00:41 · 583 阅读 · 0 评论