![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 61
洗菜剑心
骐骥一跃,不能十步。驽马十驾,功在不舍。
展开
-
分治策略
1.分治策略的思想分治就是把规模大的问题,划分为彼此独立的,规模小的结构相似子问题。直到划分到子问题能直接求解时,就通过递归来实现求解所有子问题,并合并所有解。因此递归和分治可以说是孪生兄弟。2.分治步骤第(1)步:分 把一个规模大的问题,划分成若干结构相同,能独立求解的子问题。第(2)步:治通过递归,求出每个子问题的解。第(3)步:合并把所有子问题的解,合并成一个更大规模问题的解。这里举个例子:...原创 2018-07-09 23:14:28 · 247 阅读 · 0 评论 -
普通二叉树
1.什么是二叉树树是一种比较重要的数据结构,它可以是二叉树,三叉树,可以说多叉树,但是我们今天是来看二叉树。二叉树是使用最广的树,二叉树是n个结点的有限集合,该集合为空集时候,就是我们空二叉树。或者有一个根结点有两棵互不相交的树分别称为左子树和右子树(或左孩子和右孩子),其次序不能任意颠倒。画张图看一下 根结点: 结点A分...原创 2018-07-27 11:10:50 · 2293 阅读 · 0 评论 -
红黑树
看红黑树之前先看AVL树有很多相似的地方,我也写了一篇AVL树的总结,我就没重复总结了。 我们先看红黑树特性1.根节点是黑色2.每个节点只能是黑色或者红色3.如果一个节点是红色,它得子节点必须是黑色的。4.每个叶子节点(NIL)是黑色的,这里可以是所有叶子节点连着最后一个(黑色的)哨兵节点(为NULL)。5.从任意一个节点到其叶子节点的所有路径中,包含相同数目的黑色的节...原创 2018-08-11 01:08:54 · 158 阅读 · 0 评论 -
平衡二叉树
博客思路1.通过二叉排序树引出平衡二叉树2.如何判断是不是一棵平衡二叉树3.平衡因子4.左旋 右旋 双旋5.通过画图创建一棵二叉排序树6.二叉排序树的代码思路和整体框架 1.二叉排序树二叉排序树,又叫二叉查找树,它或者是一棵空树;或者是具有以下性质的二叉树:1. 若它的左子树不空,则左子树上所有节点的值均小于它的根节点的值;2. 若它的右子树不空,则右...原创 2018-08-03 04:22:30 · 10612 阅读 · 4 评论 -
内部排序和外部排序
内排序:指在排序期间数据对象全部存放在内存的排序。外排序:指在排序期间全部对象太多,不能同时存放在内存中,必须根据排序过程的要求,不断在内,外存间移动的排序。 位置1.内部排序内部排序是排序的基础,在排序的过程中,把所有元素调到内存中进行排序,称之为内部排序。2.外部排序在数据量大的时候,只能分块排序,但是块和块排序不能保证有序,外排序用读写次数来衡量其效率。...原创 2018-09-20 01:38:30 · 6400 阅读 · 0 评论 -
01背包
01背包01背包题目给了很多个物品,W和V是两个数组,第i个物品重量是W[i],价值是V[i]。背包最大承受重量为n。如何让这个背包装的价值最大。01背包就是每个物品只有一件。定义一个和(物品总个数+1)的数组,当判断出这个物品需要装进去时候就置为1,不装进去置为0。这个就是这个数组。这也是为啥叫做01背包。粘贴一个题目过来int W[6] = {0 , 2 , 5 , 3 ,...原创 2018-10-06 17:56:07 · 148 阅读 · 0 评论