算法
文章平均质量分 91
这个专栏主要是讲数据结构和算法的
云小逸
流水不争先,争的是滔滔不绝
展开
-
【算法】------区间问题(贪心)
今天我们继续学习算法,加油。这篇文章写的是区间问题,使用了贪心思想。希望这篇可以有幸帮助到你,码字不易,请多多支持。原创 2023-04-02 14:29:20 · 583 阅读 · 10 评论 -
【算法】----多重背包问题I,II(动态规划)
今天我们接着上一篇博客继续学习背包问题:多重背包问题,这里将介绍完全背包问题的二维解法和一维解法以及优化版本,希望你可以喜欢。原创 2023-03-31 22:51:59 · 981 阅读 · 7 评论 -
【算法】----完全背包问题(动态规划)
今天我们接着上一篇博客继续学习背包问题:完全背包问题,这里将介绍完全背包问题的二维解法和一维解法,希望你可以喜欢。有 N 种物品和一个容量是 V 的背包,每种物品都有无限件可用。第 i 种物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。fijf_{i,j}fij表示前iii个物品,背包容量为jjj时的最大价值。fjf_jfj表示背包容量为jjj时的最大价值。原创 2023-03-29 17:58:48 · 1625 阅读 · 18 评论 -
【算法】----01背包问题(动态规划)
今天我们来学习一下一个经典Dp问题----背包问题,这里将详细介绍背包问题的二维解法和一维解法。码字不易,请多多支持。原创 2023-03-26 21:26:10 · 3862 阅读 · 9 评论 -
【基础算法】双指针---判断子序列
今天我们继续学习双指针问题:【判断子序列】,码字不易,请多多支持!原创 2023-03-07 23:38:30 · 305 阅读 · 2 评论 -
【基础算法】双指针---数组元素的目标和
今天我们继续学习双指针问题:【数组元素的目标和】,码字不易,请多多支持!原创 2023-03-05 09:00:14 · 619 阅读 · 21 评论 -
【基础算法】双指针---最长连续不重复子序列
今天我们来继续学习双指针的算法例题,【最长连续不重复子序列】,码字不易,请多多支持。原创 2023-03-03 17:02:20 · 1240 阅读 · 0 评论 -
二叉树的三种遍历方式
目录1.二叉树的结构:2.二叉树的前序遍历:3.二叉树的中序遍历:4.二叉树的后序遍历:5.二叉树前、中、后序的代码实现:前序遍历函数: 中序遍历函数: 后序遍历:完整代码: 代码运行结果截图: 在学数据结构的时候,我们很多人不知道在从何学起,也不知道怎么巩固所学的知识,今天在这里向大家推荐一个我认为特别优秀的一个刷题网站:牛客网,其中含有大量的算法题和面试题,链接:牛客网YYDS每一个二叉树均可以分为三部分:1.根节点 2.左子树 3.右子树。比如上图中的A的左右子树分别是B、C,而E的左右子树为NUL原创 2022-06-22 11:01:54 · 7861 阅读 · 21 评论 -
几道数组相关的面试题
在学数据结构的时候,我们很多人不知道在从何学起,也不知道怎么巩固所学的知识,今天在这里向大家推荐一个我认为特别优秀的一个刷题网站:牛客网,其中含有大量的算法题和面试题,链接:牛客网YYDS快去刷题吧,开启你的征途之旅吧!——————————————————————————————原地移除数组中所有的元素val,要求时间复杂度为O(N),空间复杂度为O(1)。时间复杂度:O(N^2)时间复杂度:O(N)空间复杂度:O(N)e.运行截图:e.运行截图:时间复杂度:O(N^2+N*logN)e原创 2022-06-15 22:15:18 · 286 阅读 · 35 评论 -
【数据结构与算法】二叉树——堆的增删查改
在学数据结构的时候,我们很多人不知道在从何学起,也不知道怎么巩固所学的知识,今天在这里向大家推荐一个我认为特别优秀的一个刷题网站:牛客网,其中含有大量的算法题和面试题,链接:牛客网YYDS前面我们已经说了关于二叉树的相关概念和二叉树的前、中、后序遍历,今天我们就来学习一下,二叉树的一种形式:堆。——————————————————————————————首先先写上几句话:献给坚持创作的我和点开这篇文章希望进步的你a.这些年我一直提醒自己一件事情,千万不要自己感动自己。大部分人看似的努力,不过是愚蠢导致原创 2022-06-15 21:42:05 · 149 阅读 · 1 评论 -
【数据结构与算法】二叉树——堆的增删查改
1.堆的基本概念和结构:a.堆的概念b.堆的性质c.堆的结构2.堆的操作注:插入删除不可以改变堆的性质,即大堆或小堆,本篇代码是以小堆为例子!!!(1)堆的建立(2)堆的初始化(3)堆的插入思想:向上调整算法逻辑上:物理上:交换函数:向上调整算法函数插入函数(4)堆的删除思想:向下调整法向下调整函数:删除函数(5)判断堆是否为空(6)求堆的长度(7)返回堆顶的值(8)销毁堆(9)遍历堆完整源码:Heap.h文件:Heap.c文件:test.c文件:运行原创 2022-05-10 07:28:49 · 902 阅读 · 127 评论 -
双向链表增删查改详解及完整代码
1.链表的分类:2.双向链表的初始化:2.双向链表的打印3.双向链表的尾插:4.双向链表的尾删 5.双向链表的头插:6.双向链表的头删:7.双向链表的查找8.双向链表的中间插 9.双向链表的中间删除原创 2022-04-27 07:34:10 · 1988 阅读 · 127 评论 -
树和二叉树的基本概念
1.树的概念:a.树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。b.把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。 c.有一个特殊的结点,称为根结点,根节点没有前驱结点 除根节点外,其余结点被分成M(M>0)个互不相交的集合T1、T2、……、Tm,其中每一个集 合Ti(1<= i <= m)又是一棵结构与树类似的子树。每棵子树的根结点有且只有一个前驱,可以 有0个或多个后继 因此,树是递归定义的。.原创 2022-05-06 07:05:55 · 2293 阅读 · 137 评论