![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
songsongL
物以类聚,人以群分。
展开
-
动态规划
我觉得动态规划主要有两点:1. 当前这个点要与不要2. 由小推向大(也就是所谓子问题),以空间换时间。01背包例:有5个物品,w = [2,2,6,5,4],v = [6,3,5,4,6],背包的容量为10。1. 一个物品一个物品的慢慢放2. 拿到一个物品到底是放还是不放当前物品不放,则价值为上一次放的情况;如果放了,则价值为把前i-1个物品放入(当前容量-这个物品容量)的价值加当前物品的价值。显然,谁大要谁。01234567891000000原创 2020-07-16 16:13:00 · 161 阅读 · 0 评论 -
二叉排序树
文章目录二叉排序树的定义结点定义二叉排序树的操作创建查找插入删除二叉排序树的定义二叉排序树,又叫二叉查找树,如果非空,则具有以下性质:若它的左子树不空,则左子树上所有节点的值均小于它的根节点的值;若它的右子树不空,则右子树上所有节点的值均大于它的根节点的值;它的左右子树也分别为二叉排序树。由定义可得出 二叉排序树的一个重要性质: 中序遍历该二叉树可以得到一个结点值递增的有序序...原创 2019-07-19 21:33:05 · 1763 阅读 · 0 评论 -
平衡二叉树
文章目录平衡二叉树概念平衡二叉树概念特殊类型的二叉排序树。二叉排序树的查找性能取决于二叉树的结构。树的高度越小,查找速度越快。如果非空,左子树与右子树深度之差的绝对值不超过1.左子树与右子树也是平衡二叉树。返回顶部...原创 2019-07-21 14:23:53 · 360 阅读 · 0 评论 -
有序链表的合并
前言看了网上人家写的,自己拿来用一用,效果不如意,有的管都不管直接将链表2接在链表1之后,有的虽然有比较一下链表1与2的元素大小,在进行链接,但运行后有bug。自己写了一下,大概就两种策略:需要第三方这种比较好理解,就是从链表1与2中依次拿过来重新组织。void MergerList(PNODE &LA,PNODE &LB,PNODE &LC){ Output...原创 2019-08-03 10:28:07 · 8888 阅读 · 1 评论 -
B-树
文章目录B-树的定义B-树的存储结构B-树的定义一颗m阶B树,或为空树,或为满足下列特性的m叉树:树中每个结点最多含有m棵子树;若根结点不是叶子结点,则至少有两颗子树;除根之外的所有非终端结点至少有 ⌈m/2⌉ 棵子树 ;所有的叶子结点都出现在同一层次上,并且不带信息,通常称为失败结点。失败结点不存在,指向这些结点的指针为空。引入失败结点是为了便于分析B-树的查找性能。结点的...原创 2019-07-26 11:02:01 · 175 阅读 · 0 评论 -
关于链表的一些题目
#include<iostream> #include <stdlib.h>#include <string.h>using namespace std;typedef struct Node//结点{ int data;//数据域 struct Node *next;//指针域}NODE, *PNODE;//NODE等价于struct St...原创 2019-08-05 11:29:32 · 417 阅读 · 0 评论 -
散列表
文章目录散列表概念散列表主要两个问题散列函数的构造处理冲突的方法散列表的查找完整代码:运行结果:散列表概念散列函数和散列地址:类似于函数y=f(x),给定一个x,能得到一个y。散列函数,给定一个关键字,可以得到一个地址。但有时不同的key可能得到相同的p,需要 处理冲突。 p=Hey(key)。散列表:一个有限连续的地址空间,用以存储散列函数计算得到相应散列地址的数据记录。散列表...原创 2019-08-11 13:00:11 · 1240 阅读 · 0 评论 -
各种排序算法总结
文章目录排序的基本概念冒泡排序(Bubble Sort)快速排序(Quick Sort)冒泡排序(Bubble Sort)冒泡排序(Bubble Sort)冒泡排序(Bubble Sort)冒泡排序(Bubble Sort)冒泡排序(Bubble Sort)冒泡排序(Bubble Sort)冒泡排序(Bubble Sort)冒泡排序(Bubble Sort)排序的基本概念返回顶部...原创 2019-08-16 11:13:20 · 293 阅读 · 0 评论